[英]Auto Copy Cells to New Sheet in Excel VBA
我正在使用VBA將值從工作表“ FV”復制到工作表“ AX”。 我從工作表“ FV”中復制了三個值,它們位於單元格J7,K7和L7中。 我的代碼正確地復制並粘貼了值J7和K7,但是由於某種原因L7沒有被復制。 我對VBA並不是很熟悉,所以我很難在代碼中找出問題的根源。
Sub CopyData()
Dim sht1 As Worksheet
Dim sht2 As Worksheet
Dim cRng As Range
Dim dCol As Long
Set sht1 = ThisWorkbook.Sheets("FV")
Set sht2 = ThisWorkbook.Sheets("AX")
Set cRng = sht1.Range("J7:L7")
dCol = sht2.Cells(1, Columns.Count).End(xlToLeft).Column + 1
sht2.Range(Cells(1, dCol).Address, Cells(1, dCol).Address) = cRng.Value
End Sub
感謝您的任何幫助!
我建議不要不必要地丟失.Address,並確保將設置的范圍彼此相等是相同的尺寸,例如
sht2.Range(sht2.Cells(1, dCol), sht2.Cells(1, dCol+2))=cRng
完全限定范圍內的單元格引用,以避免引發錯誤。
來自@ marucciboy2的要點是重新使用列數以確保寬度匹配。
sht2.Range(sht2.Cells(1, dCol), sht2.Cells(1, dCol+cRng.columns.count-1))=cRng
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.