master90x
Thành viên mới 

			
		- Tham gia
 - 7/1/13
 
- Bài viết
 - 17
 
- Được thích
 - 0
 
- Giới tính
 - Nam
 
- Nghề nghiệp
 - Bách Nghệ
 
Dear All,
Hiện tại e đang có code này để cóp nhặt thông tin từ các file rồi tổng hợp lại vào 1 sheet. Tuy nhiên vấn đề là khi duyệt các file có tên tiếng việt thì VBA báo lỗi 1004 ko duyệt đc file. E đã dùng On Error GoTo rồi Resume Next để thử nhưng vẫn ko được. VBA vẫn hiển thị lỗi mà không bỏ qua. Các bác giúp e vs.
Thanks các bác

	
	
	
		
				
			Hiện tại e đang có code này để cóp nhặt thông tin từ các file rồi tổng hợp lại vào 1 sheet. Tuy nhiên vấn đề là khi duyệt các file có tên tiếng việt thì VBA báo lỗi 1004 ko duyệt đc file. E đã dùng On Error GoTo rồi Resume Next để thử nhưng vẫn ko được. VBA vẫn hiển thị lỗi mà không bỏ qua. Các bác giúp e vs.
Thanks các bác

		Mã:
		
	
	Sub copy_costsheet()
Dim n, m, chi_so, lr, chiso_lechcot, chiso_saiten As Long
Dim expected_price As Variant
Dim path, customer_name, customer_code, part_no As String
path = Sheets("Main").Cells(5, "A").Value
Filename = Dir(path & "*.xls*")
Dim ws As Worksheet
m = 0
n = 1
chiso_lechcot = 2
chiso_saiten = 2
Do While Filename <> ""
    On Error Resume Next
    Workbooks.Open Filename:=path & Filename, ReadOnly:=True, UpdateLinks:=0
    Sheets("Cost sheet").Select
    customer_code = Sheets("Cost sheet").Cells(3, "D").Value
    part_no = Sheets("Cost sheet").Cells(4, "D").Value
    customer_name = Sheets("Cost sheet").Cells(6, "D").Value
    Application.Workbooks("CopyCostSheet-v2.xlsm").Activate
    Sheets("Data").Select
''  Copy Ten Ma Hang CostSheet
    Sheets("Data").Activate
    n = n + m + 1
    Application.Workbooks("CopyCostSheet-v2.xlsm").Activate
    Sheets("Data").Cells(n, "A").Value = "Customer Code: "
    Sheets("Data").Cells(n + 1, "A").Value = "Part No: "
    Sheets("Data").Cells(n + 2, "A").Value = "Customer Name: "
    Sheets("Data").Cells(n + 3, "A").Value = "Selling Price: "
   
    Sheets("Data").Cells(n, "B").Value = customer_code
    Sheets("Data").Cells(n + 1, "B").Value = part_no
    Sheets("Data").Cells(n + 2, "B").Value = customer_name
       
''  Copy CostSheet
    chi_so = 0
   
    Application.Workbooks(Filename).Activate
    Application.Workbooks("CopyCostSheet-v2.xlsm").Sheets("Data").Cells(n + 4, "A").Value = Filename
    For m = 10 To 250
        If Sheets("Cost sheet").Cells(m, "D").Value = "Total raw material cost" Then
            chi_so = m
        End If
        If Sheets("Cost sheet").Cells(m, "D").Value = "Expected price" Or Sheets("Cost sheet").Cells(m, "D").Value = "Selling price" Or Sheets("Cost sheet").Cells(m, "D").Value = "Selling Price" Or Sheets("Cost sheet").Cells(m, "D").Value = "selling price" Or Sheets("Cost sheet").Cells(m, "D").Value = "selling Price" Then
           expected_price = Sheets(2).Cells(m, "I").Value
        End If
    Next m
    Sheets("Cost sheet").Activate
   
    If chi_so = 0 Then
       Application.Workbooks("CopyCostSheet-v2.xlsm").Activate
       Sheets("Sheet_Loi").Cells(chiso_lechcot, "A").Value = Filename
       chiso_lechcot = chiso_lechcot + 1
       Workbooks(Filename).Close Savechanges:=False
       Filename = Dir()
    Else
        Range(Cells(10, "A"), Cells(chi_so, "I")).Select
        Selection.Copy
        Application.Workbooks("CopyCostSheet-v2.xlsm").Activate
        Sheets("Data").Cells(n, "D").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Sheets("Data").Cells(n + 3, "B").Value = expected_price
        m = chi_so + 2 - 10
        Application.DisplayAlerts = False
        Workbooks(Filename).Close Savechanges:=False
        Filename = Dir()
    End If
       
        GoTo ketthuc
   
skip1:
    '' Dien Thong Tin Sheet Bi Sai Ten
    Application.Workbooks("CopyCostSheet-v2.xlsm").Activate
    Sheets("Sheet_Loi").Cells(chiso_saiten, "B").Value = Filename
    chiso_saiten = chiso_saiten + 1
   
ketthuc:
Loop
End Sub
	
			
				Lần chỉnh sửa cuối: 
			
		
	
								
								
									
	
								
							
							
	
	  

