![](/img/trans.png)
[英]VBA Copy column data to last row of different column, do for multiple columns, loop through all worksheets do same
[英]loop through i = 1 to n rows, find last used column in each row and copy its data to column AA1 same row VBA?
我陷入了我希望宏在可變數量的行中循環的部分。 我需要在每一行中找到最后使用的列,並將其內容復制到同一行的AA1列。 每行中的列數也是可變的,並且隨着列數是要復制的文本的結果而變化。 我永遠不會知道我將擁有多少行和列。
原因是最后使用的列將具有一個鍵,稍后我將使用該鍵從另一張表中查找數據。 請幫助。 我試圖通過先選擇列AA1,然后像這樣按ctrl + shift左鍵,然后將其粘貼到“ AB1”列中,這樣我會將所有代碼都放在一列中,從而記錄下來。 但是,當我嘗試循環時,它不起作用。
Range("AA1").Select
Range(Selection, Selection.End(xlToLeft)).Select
Selection.Copy
Range("AB1").Select
ActiveSheet.Paste
到目前為止,這是我為該循環整理的內容:
Sub newmak()
Dim i
Dim n
n = Range("A" & Range("A:A").Rows.Count).End(xlUp).Row
For i = 1 To n
'==================================that part is not working
Cells(i, Columns.Count).Select
Selection.Copy
Range("a" & i, 27).Select '<--??
Selection.PasteSpecial
'==================================
Next i
End Sub
要查找此行的最后一列LETTER
LastColLtr = Split(Cells(1, Range("ZZ" & RN1).End(xlToLeft).Column).Address, "$")(1)
要查找此行的最后一列NUMBER
LastColNum = Range("ZZ" & RN1).End(xlToLeft).Column
dim i as long
i = 1
do until isempty(activesheet.cells(i, 1).value)
dim v as variant
if isempty(activesheet.cells(i, 2).value) then
v = activesheet.cells(i, 1).value
else
v = activesheet.cells(i, 1).end(xltoright).value
end if
activesheet.cells(i, "AB").value = v
i = i + 1
loop
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.