Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


63654 / 76732 ←次へ | 前へ→

【17673】Re:文字列のカンマ区切りとワークシート表のセル並び替え
回答  かみちゃん  - 04/9/4(土) 19:37 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>のようにはなりませんでした。すみませんが、一度この例題でVBAコードをチェックして頂けませんか?

私も勘違いしていましたので、勉強がてらKeinさんのコードを見ました。
下記のようにすると、うまく動くようです。

Sub MyData_Split()
  Dim i As Long, j As Long
  Dim Ary1() As String, Ary2() As String, Ary3() As String
  Dim SpAry As Variant, V As Variant
 
  With Sheets("Sheet1")
   For i = 1 To .Range("A1").End(xlDown).Row
     If IsEmpty(.Cells(i, 3).Value) Then
      ReDim Preserve Ary1(j): Ary1(j) = .Cells(i, 1).Value
      ReDim Preserve Ary2(j): Ary2(j) = ""
      ReDim Preserve Ary3(j): Ary3(j) = ""
      j = j + 1
     Else
      If Len(.Cells(i, 3).Value) = 1 Then
        ReDim Preserve Ary1(j): Ary1(j) = .Cells(i, 1).Value
        ReDim Preserve Ary2(j): Ary2(j) = .Cells(i, 2).Value
        ReDim Preserve Ary3(j): Ary3(j) = .Cells(i, 3).Value
        j = j + 1
      Else
        SpAry = Split(.Cells(i, 3).Value, ",")
        For Each V In SpAry
         ReDim Preserve Ary1(j): Ary1(j) = .Cells(i, 1).Value
         ReDim Preserve Ary2(j): Ary2(j) = .Cells(i, 2).Value
         ReDim Preserve Ary3(j): Ary3(j) = V
         j = j + 1
        Next
        Erase SpAry
      End If
     End If
   Next i
  End With
  With Sheets("Sheet2")
   .Cells(1, 1).Resize(UBound(Ary1) + 1).Value = _
   WorksheetFunction.Transpose(Ary1)
   .Cells(1, 2).Resize(UBound(Ary2) + 1).Value = _
   WorksheetFunction.Transpose(Ary2)
   .Cells(1, 3).Resize(UBound(Ary3) + 1).Value = _
   WorksheetFunction.Transpose(Ary3)
   .Cells(1, 1).CurrentRegion.Borders.LineStyle = 1
  End With
  Erase Ary1, Ary2, Ary3
End Sub
0 hits

【17647】文字列のカンマ区切りとワークシート表のセル並び替え しん 04/9/4(土) 0:13 質問
【17650】Re:文字列のカンマ区切りとワークシート表... Kein 04/9/4(土) 1:08 回答
【17670】Re:文字列のカンマ区切りとワークシート表... しん 04/9/4(土) 19:07 質問
【17673】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 19:37 回答
【17676】Re:文字列のカンマ区切りとワークシート表... しん 04/9/4(土) 20:36 質問
【17677】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 20:55 回答
【17681】Re:文字列のカンマ区切りとワークシート表... しん 04/9/4(土) 21:57 質問
【17682】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 22:18 発言
【17683】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 22:41 回答
【17684】Re:文字列のカンマ区切りとワークシート表... Kein 04/9/4(土) 22:50 回答
【17685】Re:文字列のカンマ区切りとワークシート表... Kein 04/9/4(土) 22:56 回答
【17686】Re:文字列のカンマ区切りとワークシート表... Kein 04/9/4(土) 23:00 発言
【17687】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 23:08 発言
【17688】Re:文字列のカンマ区切りとワークシート表... Kein 04/9/4(土) 23:42 発言
【17690】Re:文字列のカンマ区切りとワークシート表... Kein 04/9/4(土) 23:48 回答
【17691】Re:文字列のカンマ区切りとワークシート表... しん 04/9/4(土) 23:59 お礼
【17678】Re:文字列のカンマ区切りとワークシート表... Kein 04/9/4(土) 21:23 回答
【17654】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 11:30 回答
【17671】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 19:25 回答
【17674】Re:文字列のカンマ区切りとワークシート表... しん 04/9/4(土) 19:58 質問
【17675】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 20:29 回答
【17680】Re:文字列のカンマ区切りとワークシート表... かみちゃん 04/9/4(土) 21:30 回答
【17692】Re:文字列のカンマ区切りとワークシート表... しん 04/9/5(日) 0:04 お礼
【17672】Re:文字列のカンマ区切りとワークシート表... しん 04/9/4(土) 19:36 質問

63654 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free