Thuyanhanoi
Thành viên thường trực
![](/diendan/data/PhoToDanhHieu/gold.gif)
![](/diendan/data/PhoToDanhHieu/gold.gif)
![](/diendan/data/PhoToDanhHieu/gold.gif)
![](/diendan/data/PhoToDanhHieu/gold.gif)
- Tham gia
- 15/10/12
- Bài viết
- 304
- Được thích
- 154
- Nghề nghiệp
- Nhân viên
1 đoạn code chỉ cho phép xuất 1 loại File, vì vậy bạn cần loại nào thì nên cụ thể, khi các thành viên giúp cho bạn, dựa vào code có sẳn để ứng biến vào nhu cầu của bạn.Mong mọi người giúp đỡ hoàn thiên Form để xuất các sheet lưu thành file với định dạng được chọn trong form
như em đã làm trong file đính kem
Trên form của e1 đoạn code chỉ cho phép xuất 1 loại File, vì vậy bạn cần loại nào thì nên cụ thể, khi các thành viên giúp cho bạn, dựa vào code có sẳn để ứng biến vào nhu cầu của bạn.
Khi nào xử không được thì lại hỏi tiếp.
Vâng! .Trong form em thiết kế với mục đich:1 đoạn code chỉ cho phép xuất 1 loại File, vì vậy bạn cần loại nào thì nên cụ thể, khi các thành viên giúp cho bạn, dựa vào code có sẳn để ứng biến vào nhu cầu của bạn.
Khi nào xử không được thì lại hỏi tiếp.
Code viết sai nhiều quá.Trên form của e
Vâng! .Trong form em thiết kế với mục đich:
- Chon sheet cần xuất thành loại pdf hoặc excel thì chọn loại (format) để xuất file; mỗi lần chỉ xuất 1 sheet, tên file mới được nhập ở (file name) em đang làm nhưng chưa thành công.
Mong mọi người giúp!.
Sub Xuat_file()
Dim NewFileName, Name As Name
With ThisWorkbook.Sheets(ComboBox1.Text) ',
.Copy
With ActiveWorkbook
.ActiveSheet.Unprotect "tsdaotao"
For Each Name In .Names ', AccessModeAs = True XlSaveAsccessMode = True,
Name.Visible = True
'Name.Delete
Next
NewFileName = TextBox2.Text & "\" & TextBox1.Text
If ComboBox2.Text <> "file pdf" Then
.SaveAs NewFileName, IIf(ComboBox2.Text = "File excel", 51, 6)
.Close True
Else
.ActiveSheet.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=NewFileName, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
.Close False
End If
End With
End With
End
End Sub
Mình cảm ơn bạn rất nhiều!. Code bạn sửa cho mình chạy rất tốt!.Code viết sai nhiều quá.
Bạn thử code sau
Mã:Sub Xuat_file() Dim NewFileName, Name As Name With ThisWorkbook.Sheets(ComboBox1.Text) ', .Copy With ActiveWorkbook .ActiveSheet.Unprotect "tsdaotao" For Each Name In .Names ', AccessModeAs = True XlSaveAsccessMode = True, Name.Visible = True 'Name.Delete Next NewFileName = TextBox2.Text & "\" & TextBox1.Text If ComboBox2.Text <> "file pdf" Then .SaveAs NewFileName, IIf(ComboBox2.Text = "File excel", 51, 6) .Close True Else .ActiveSheet.ExportAsFixedFormat _ Type:=xlTypePDF, _ Filename:=NewFileName, _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=True .Close False End If End With End With End End Sub
Mong bạn giúp mình thêm điều kiện này với!.Code viết sai nhiều quá.
Bạn thử code sau
Mã:Sub Xuat_file() Dim NewFileName, Name As Name With ThisWorkbook.Sheets(ComboBox1.Text) ', .Copy With ActiveWorkbook .ActiveSheet.Unprotect "tsdaotao" For Each Name In .Names ', AccessModeAs = True XlSaveAsccessMode = True, Name.Visible = True 'Name.Delete Next NewFileName = TextBox2.Text & "\" & TextBox1.Text If ComboBox2.Text <> "file pdf" Then .SaveAs NewFileName, IIf(ComboBox2.Text = "File excel", 51, 6) .Close True Else .ActiveSheet.ExportAsFixedFormat _ Type:=xlTypePDF, _ Filename:=NewFileName, _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=True .Close False End If End With End With End End Sub
Bạn thêm dòng:Mong bạn giúp mình thêm điều kiện này với!.
Khi xuất file excel hoặc pdf mà mình muốn xóa dữ liệu một vùng nào đó ở file mới được xuất ra Ví dụ khi chọn sheet "Ha_Noi" để xuất thì dữ liệu vùng [K1:M5] của file được xuất ra sẽ được xóa đi (clear).
Xin cảm ơn mọi sự trợ giúp!.
Mình cảm ơn bạn!.Bạn thêm dòng:
.ActiveSheet.Range("K1:M5").Clear dưới dòng unprotect thui
Bạn thêm vài dòng lênh cho nó thui:Mình cảm ơn bạn!.
Xin lỗi vì phần trước trình bày chưa hết, Mình muốn khi chọn sheet "Ha_Noi" để xuất thì vùng .Range("K1:M5").Clear. Nhưng Khi chọn sheet "Bac_Ninh" thì vùng .Range("F44:I48").Clear và ActiveSheet.Shapes("CheckBox1").Delete thì mình phải làm thế nào?
Ví dụ mình muốn thêm:
- Nếu chọn sheet "Ha_Noi" thì vùng .Range("K1:M5").Clear
- Nếu chọn sheet "Bac_Ninh" thì .Range("F44:I48").Clear và ActiveSheet.Shapes("CheckBox1").Delete
- Nếu chọn sheet "HCM" thì .Range("D4:G5").Clear và ActiveSheet.Shapes("TextBox 1").Delete
...
Mình cảm ơn sự giúp đỡ của các bạn
Cảm ơn bạn!. Mình đãm làm được rồi.Bạn thêm vài dòng lênh cho nó thui:
ví dụ: if .activesheet.name = "Hà Nội" then
.activesheet.range(...).clear
....
end if
If ActiveSheet.Name = "Ha_Noi" Then
.ActiveSheet.Range("K1:M5").Clear
ElseIf .ActiveSheet.Name = "HCM" Then
.ActiveSheet.Range("I1:K10").Clear
.ActiveSheet.Shapes("TextBox 1").Delete
Else
.ActiveSheet.Range("M10:O14").Clear
End If
nhờ bạn xem lại sao code lỗi k xuất dc vậyCảm ơn bạn!. Mình đãm làm được rồi.
Mã:If ActiveSheet.Name = "Ha_Noi" Then .ActiveSheet.Range("K1:M5").Clear ElseIf .ActiveSheet.Name = "HCM" Then .ActiveSheet.Range("I1:K10").Clear .ActiveSheet.Shapes("TextBox 1").Delete Else .ActiveSheet.Range("M10:O14").Clear End If
Bạn xem file nhé!.nhờ bạn xem lại sao code lỗi k xuất dc vậy
Bạn xem file nhé!.