新手求解 VBA 要怎麼把資料自動貼到其他活頁簿

相關的想法是參考這個youtube影片,但是依照上面所說的做卻是貼在想要匯出的資料頁當中
我想要將每日更新表range(A3:C3)的資料再點選"匯入總表"的按鈕後,匯入到未平倉量總表當中,並依時間往下
匯入總表的VBA語法如下
Private Sub 匯入總表()
Dim a As String
Dim b As String
Dim c As String
a = Cells(3, 1)
b = Cells(3, 2)
c = Cells(3, 3)
Worksheets("未平倉量總表").Select
h = Range("B2").End(xlDown).Row
Cells(h + 1, "B") = a
Cells(h + 1, "C") = b
Cells(h + 1, "D") = c

Application.CutCopyMode = False

Workbooks("未平倉數據").Save

End Sub

求如何修改?依這個語法寫下去,三筆資料還是會匯到"每日更新表"的活頁簿當中

新手求解 VBA 要怎麼把資料自動貼到其他活頁簿
新手求解 VBA 要怎麼把資料自動貼到其他活頁簿
2017-09-29 20:23 發佈
因為在[未平倉量總表]工作表中,該欄位只到B1儲存格有值

h = Range("B2").End(xlDown).Row
是從B2儲存格開始往下取得最後出現的資料列

這有個問題,欄位B2以下是空白的都沒有資料
因此該語法會回傳65536給h
也就是該欄位的最後一列
所以複製過去的資料都會在最後一列


另外.End(xlDown)語法最少就從每列第一列往下找
即使該語法Range("B1").End(xlDown).Row
從B1開始往後找也是空白
除非預先輸入一筆資料在B2,往後執行才會回傳正確值

故建議改用
h = Range("B65536").End(xlUp).Row
該語法意思是從第B65536儲存格往上找到第一次出現值的儲存格位置
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?