다시 포맷 해야하는 Excel 스프레드 시트에 일부 데이터가 있습니다. 기존 형식은 행입니다. 원하는 형식은 쉼표로 구분됩니다.
수퍼 유저의 다른 곳에서 VBA 스크립트를 발견했습니다.
Sub generatecsv()
Dim i As Integer
Dim s As String
i = 1
Do Until Cells(i, 1).Value = ""
If (s = "") Then
s = Cells(i, 1).Value
Else
s = s & "," & Cells(i, 1).Value
End If
i = i + 1
Loop
Cells(1, 2).Value = s
End Sub
현재 의도 한 워크 플로에 대한이 스크립트의 단점은 다음과 같습니다.
셀 범위는 항상 열 1에 있어야합니다. 워크 시트의 어느 곳에서나 선택한 범위에서 스크립트를 입력해야합니다.
스크립트의 출력은 항상 Cell (1,2)에 나타납니다. 클립 보드에 복사하고 싶습니다.
s.Copy 또는 s.PutInClipboard와 같은 것이 작동하지만 오류가 발생하기를 바랍니다.
데이터는 다음과 같습니다 :
Topic 1
Mike
Tony
Dave
Topic 2
Steve
Joe
Sally
Topic 3
...
원하는 출력은 다음과 같습니다.
Mike, Tony, Dave
(클립 보드로)
그런 다음 다음 반복에서 :
Steve, Joe, Sally
(클립 보드로)