2016-03-28 33 views
-2

Bu satırlar tek bir satıra nasıl yerleştirilir?Bu satırlar tek bir satıra nasıl yerleştirilir?

1,2,3,4 ...... B2, C2, D2, ....... Z2

Sheets("1").Range("B2:B300").Copy Sheets("Result").Range("B2") 
Sheets("2").Range("B2:B300").Copy Sheets("Result").Range("C2") 
Sheets("3").Range("B2:B300").Copy Sheets("Result").Range("D2") 
Sheets("4").Range("B2:B300").Copy Sheets("Result").Range("E2") 
Sheets("5").Range("B2:B300").Copy Sheets("Result").Range("F2") 
. 
. 
. 
Sheets("25").Range("B2:B300").Copy Sheets("Result").Range("Y2") 
Sheets("26").Range("B2:B300").Copy Sheets("Result").Range("Z2") 
+0

yardımcı olur sence? Tek bir satır mı? – kojow7

+0

Lütfen ne istediğinize ilişkin daha fazla ayrıntı ekleyin. Bir resmin 1000 kelimeye değdiğini söylüyorlar, bu yüzden bir ekran görüntüsü örneği açıklamak zorsa yardımcı olabilir. – David

cevap

0

26 döngü için bir fazlası:

For x = 1 to 26 
    Sheets(Cstr(x)).Range("B2:B300").Copy Sheets("Result").Cells(2,x+1) 
next x 
+0

Çok teşekkür ederim. Yukarıdaki döngü beklediğim gibi çalıştı. –

+0

@ M.GOW Yardımdan memnun iseniz lütfen cevabın gri/yeşil onay işaretini tıklayarak doğru şekilde işaretleyin. –

0

aşağıdaki yöntem aşağıdaki videoyu tek bir satır demek istiyorsunuz

Sub GetCopyOfColumnB() 
Dim ws As Worksheet 
Dim resultPageName As String 
Dim isTherePage As Boolean 
Dim i As Integer 


resultPageName = "Result" 
isTherePage = False 

For Each ws In ActiveWorkbook.Sheets 
    If ws.Name = resultPageName Then 
     isTherePage = True 
    End If 
Next 
If isTherePage = False Then 

    Worksheets.Add After:=Sheets(ActiveWorkbook.Sheets.Count) 

    Worksheets(Worksheets.Count).Name = resultPageName 
End If 
i = 1 
For Each ws In ActiveWorkbook.Sheets 
    If ws.Name <> resultPageName Then 
     ws.Range("B2:B300").Copy Sheets("Result").Cells(2, i) 
     i = i + 1 
    End If 
Next 
End Sub 
İlgili konular