Board logo

標題: 文字串接語法簡化及延伸請益 [打印本頁]

作者: 學到老死    時間: 2016-2-28 18:19     標題: 文字串接語法簡化及延伸請益

以下是小弟拙劣的語法,想請問如何簡化...另外想請問大大的是若日後資料量不只到第四列,如何透過語法自動判讀資料量到第幾列,就迴圈到最後一列。是否是For...Next 語法呢?
謝謝大大們。


Sub 文字串接語法()

Worksheets("想要的txt檔").Range("a1") = Worksheets("原始excel檔案").Range("a1") & Worksheets("原始excel檔案").Range("b1") & Worksheets("原始excel檔案").Range("f1")

Worksheets("想要的txt檔").Range("a2") = Worksheets("原始excel檔案").Range("a2") & Worksheets("原始excel檔案").Range("b2") & Worksheets("原始excel檔案").Range("f2")

Worksheets("想要的txt檔").Range("a3") = Worksheets("原始excel檔案").Range("a3") & Worksheets("原始excel檔案").Range("b3") & Worksheets("原始excel檔案").Range("f3")

Worksheets("想要的txt檔").Range("a4") = Worksheets("原始excel檔案").Range("a4") & Worksheets("原始excel檔案").Range("b4") & Worksheets("原始excel檔案").Range("f4")


End Sub
作者: ML089    時間: 2016-2-28 22:00

回復 1# 學到老死
  1. Sub EX()
  2.     Dim xA As Worksheet, xB As Worksheet
  3.     Set xA = ThisWorkbook.Worksheets("原始EXCEL檔案")
  4.     Set xB = ThisWorkbook.Worksheets("想要的TXT檔案")
  5.     For i = 2 To xA.Cells(4 ^ 8, 1).End(xlUp).Row
  6.         xB.Cells(i, 1) = xA.Cells(i, 1) & xA.Cells(i, 2) & xA.Cells(i, 6)
  7.     Next i
  8. End Sub
複製代碼

作者: lpk187    時間: 2016-2-28 22:03

回復 1# 學到老死

下面有3個模式,給你參考,(如,你的問題不只下面這3種模式)
  1. Public Sub Ex()
  2.     Dim ro%, I%
  3.     With Worksheets("原始EXCEL檔案")
  4.         ro = .Cells(Rows.Count, 1).End(xlUp).Row '尋找最後一列的列號,請看VBE說明:Range.End 屬性
  5.         For I = 2 To ro '以列號做迴圈
  6.             Worksheets("想要的TXT檔案").Cells(I, "A") = .Cells(I, "A") & .Cells(I, "B") & .Cells(I, "F")
  7.         Next
  8.     End With
  9. End Sub

  10. Public Sub test()
  11.     Dim ro%, Rng As Range
  12.     With Worksheets("原始EXCEL檔案")
  13.         ro = .Cells(Rows.Count, 1).End(xlUp).Row '尋找最後一列的列號,請看VBE說明:Range.End 屬性
  14.         For Each Rng In .Range("A2:A" & ro) '以物件為迴圈
  15.             Worksheets("想要的TXT檔案").Cells(Rng.Row, "A") = Rng & Rng.Offset(, 1) & Rng.Offset(, 5)
  16.         Next
  17.     End With
  18. End Sub

  19. Public Sub test1()
  20.     Dim ro%, Rng As Range
  21.     With Worksheets("原始EXCEL檔案")
  22.         ro = 2
  23.         Do Until .Cells(ro, 1) = "" 'A當欄遇上空白就跳離迴圈
  24.             Worksheets("想要的TXT檔案").Cells(ro, "A") = .Cells(ro, "A") & .Cells(ro, "B") & .Cells(ro, "F")
  25.             ro = ro + 1
  26.         Loop
  27.     End With
  28. End Sub
複製代碼

作者: 學到老死    時間: 2016-2-28 22:30

感謝兩位大大 指導~




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)