Xuất từ excel to word

Liên hệ QC

boysanhdieu

Thành viên mới
Tham gia
13/10/08
Bài viết
25
Được thích
4
Các bác cho mình hỏi, mình có code VBA sau nhưng khi kết xuất từ excel sang word nó không tự save as như đường dẫn trong code, các bác chỉ giáo giúp
Với lại mình muốn nó tự đạt tên theo số liệu của 1 ô cố định nào đó trong sheet thì làm ntn?
Thanks các bác
Mã:
Sub Export_to_Word()
Dim wdapp As Object, wddoc As Object
Dim strdocname As String
On Error Resume Next
Sheet7.Range("B1:G57").Copy
Set wdapp = GetObject(, "word.Application")
If Err.Number = 429 Then
    Err.Clear
    Set wdapp = CreateObject("Word.Application")
End If
wdapp.Visible = True
wdapp.Active
Set wddoc = wdapp.Documents.Add
wddoc.Active
wddoc.Range.PasteSpecial xlPasteValues
Set wddoc = Nothing
Set wdapp = Nothing
wddoc.SaveAs (Application.ThisWorkbook.Path & "\abc.docx")
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "Done!"
End Sub
 
Option Explicit

Sub Export_to_Word()
Const extension_docx As String = ".docx"
Const extension_doc As String = ".doc"
Const rng_copy As String = "A1:AE54"
Const scell_name As String = "AJ5"

Dim wdapp As Object, wddocx As Object, wddoc As Object
Dim docx_name As String
Dim doc_name As String

docx_name = ThisWorkbook.Path & "\" & Sheet1.Range(scell_name).Value2 & extension_docx
doc_name = ThisWorkbook.Path & "\" & Sheet1.Range(scell_name).Value2 & extension_doc

Application.DisplayAlerts = False
Application.ScreenUpdating = False

Sheet1.Activate
Sheet1.Range(rng_copy).Copy

Set wdapp = CreateObject("Word.Application")
Set wddocx = wdapp.Documents.Add
Set wddoc = wdapp.Documents.Add
With wddocx
.Range.PasteSpecial xlPasteValues
.SaveAs docx_name báo lỗi bác @befaint
.Close
End With

With wddoc
.Range.PasteSpecial xlPasteValues
.SaveAs doc_name
.Close
End With
'clean up
Set wddocx = Nothing: Set wddoc = Nothing
Set wdapp = Nothing
Application.CutCopyMode = False
Application.DisplayAlerts = True
Application.ScreenUpdating = True
MsgBox "Done!", vbInformation
End Sub
Bài đã được tự động gộp:


Nó vẫn ko đặt tên bác ạ @songmai @giaiphap , chắc lỗi do máy của mình
View attachment 238494
Bạn phải chịu khó debug code chứ. Chọn dòng nào đó cần debug bấm F9 để đến đó thì dừng code, từ đó trở đi bấm F8 để chạy từng bước dò xem lỗi chỗ nào.
 
Upvote 0
Web KT
Back
Top Bottom