返回列表 上一主題 發帖

[發問] 指定資料表

回復 5# v03586
你上傳 AB 兩檔案,不就明瞭了?
一般是你工作表定義的名稱找不著。

TOP

回復 7# v03586
問題出在
  1. Set RepSht = Sheets("FMC")
複製代碼
單獨開啟 "Report_3.xls" 是OK 的。
但是再開啟 "原始檔案.xlsx" 便出問題了,
因為 ActiveWorkbook 改變了。
  1. Set RepSht = Workbooks(1).Sheets("FMC")
複製代碼
則 OK。

TOP

回復 9# v03586
  1. Sub 新報表_HQ匯入()
  2.     'timeStamp = Now
  3.     Dim xFile$, x As New Application, xB As Workbook, xS As Worksheet
  4.     Dim RepSht As Worksheet, xR As Range, xLab As Range, xAddress$
  5.     Set RepSht = Workbooks(1).Sheets("FMC")
  6.    
  7.     Sheets("FMC").Activate
  8.     Application.ScreenUpdating = False
  9.    
  10.     RepSht.UsedRange.EntireRow.Delete
  11.     Dim currentPKG, currentDevice, whichFirst As String
  12.     Dim index As Integer
  13.     Dim hasReport As Boolean
  14.     title_row = 1

  15.     hasReport = False
  16.     With Workbooks.Open(ThisWorkbook.Path & "\原始檔案.xlsx")
  17.         With Sheets("H LOT")
  18.             If .Range("A" & title_row).Value Like "MONBR*" And .Range("D" & title_row).Value Like "DEVICE*" And .Range("E" & title_row) Like "PKG*" Then
  19.                 Set xS = Sheets("H LOT")
  20.                 hasReport = True
  21.             End If
  22.         End With
  23.         If hasReport = False Then MsgBox "找不到報表檔! ": Exit Sub
  24.         R = xS.Cells(Rows.Count, 1).End(xlUp).Row + 5
  25.         With RepSht
  26.             .Range("A1:A" & R) = xS.Range("E1:E" & R).Value  'pkg
  27.             .Range("B1:B" & R) = xS.Range("A1:A" & R).Value  'MO
  28.             .Range("C1:C" & R) = xS.Range("G1:G" & R).Value 'MO Lot
  29.             .Range("D1:D" & R) = xS.Range("S1:S" & R).Value 'Machine
  30.             .Range("E1:E" & R) = xS.Range("Z1:Z" & R).Value 'PCCode
  31.             .Range("F1:F" & R) = xS.Range("D1:D" & R).Value         'Device
  32.             .Range("G1:G" & R) = xS.Range("F1:F" & R).Value  'input Date
  33.             .Range("H1:H" & R) = xS.Range("M1:M" & R).Value   'DavinciCode
  34.             .Range("I1:I" & R) = xS.Range("N1:N" & R).Value  'Thickness
  35.             .Range("J1:J" & R) = xS.Range("AA1:AA" & R).Value  'SitePath
  36.             .Range("K1:K" & R) = xS.Range("Q1:Q" & R).Value  'WS Tool
  37.             .Range("L1:L" & R) = xS.Range("R1:R" & R).Value  ' Status
  38.             .Range("M1:M" & R) = xS.Range("H1:H" & R).Value  'WIP
  39.             .Range("N1:N" & R) = xS.Range("J1:J" & R).Value  ' WaferPcs
  40.             .Range("O1:O" & R) = xS.Range("AB1:AB" & R).Value  ' DA Flow
  41.             .Range("P1:P" & R) = xS.Range("AC1:AC" & R).Value  ' LastMO
  42.             .Range("Q1:Q" & R) = xS.Range("V1:V" & R).Value  'B/D
  43.             .Range("R1:AD1") = Split("TBG1,PGH1,WG,LWS1,DE01,FL01,SLS1,WM01,WS01,UTI1,VS01,QVS1,DB,", ",")
  44.             
  45.             .Range("AF1:AF" & R) = xS.Range("J1:J" & R).Value  ' WaferPcs Cut
  46.         End With
  47.         .Close
  48.     End With
  49.     '
  50.     '
  51.     '  ***  以下未經修正  ***
  52.     '
  53.     '
  54. End Sub
複製代碼

TOP

        靜思自在 : 一個人不怕錯,就怕不改過,改過並不難。
返回列表 上一主題