Excel VBA質問箱 IV

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

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


63636 / 76732 ←次へ | 前へ→

【17691】Re:文字列のカンマ区切りとワークシート表のセル並び替え
お礼  しん E-MAIL  - 04/9/4(土) 23:59 -

引用なし
パスワード
   ▼Kein さん:
こんばんは、しんです。
Keinさん修正コード
>
>Sub Data_Align()
>  Dim Sh As Worksheet
>  Dim VAry As Variant, SAry As Variant
>  Dim i As Long, SR As Long, ER As Long
>  Dim Ans As Long, x As Long, y As Long
> 
>  On Error Resume Next
>  Set Sh = Worksheets("Sheet2")
>  If Err.Number > 0 Then
>   Set Sh = Worksheets.Add(After:=Sheets("Sheet1"))
>   ActiveSheet.Name = "Sheet2": Err.Clear
>  Else
>   Sh.Cells.ClearContents
>  End If
>  On Error GoTo 0
>  Ans = MsgBox("2行目を副タイトル行としますか", 36)
>  If Ans = 6 Then
>   SR = 3
>  Else
>   SR = 2
>  End If
>  With Sheets("Sheet1")
>   With .Range("A1").CurrentRegion
>     x = .Columns.Count: ER = .Rows.Count
>   End With
>   If .Columns(x).Find("*,*", , xlValues) Is Nothing Then
>     MsgBox x & " 列にカンマ区切りのデータがありません", 48
>     Exit Sub
>   End If
>   For i = SR To ER
>     If Len(.Cells(i, x).Value) < 2 Then
>      VAry = .Cells(i, 1).Resize(, x).Value
>      Sh.Range("A65536").End(xlUp).Offset(1) _
>      .Resize(, x).Value = VAry
>     Else
>      SAry = Split(.Cells(i, x).Value, ",")
>      y = UBound(SAry) + 1
>      VAry = .Cells(i, 1).Resize(, x - 1).Value
>      With Sh.Range("A65536").End(xlUp)
>        .Offset(1).Resize(y, x - 1).Value = VAry
>        .Offset(1, x - 1).Resize(y).Value = _
>        WorksheetFunction.Transpose(SAry)
>      End With
>      Erase SAry
>     End If
>   Next i
>   Sh.Range("A1").Resize(, x).Value = _
>   .Range("A1").Resize(, x).Value
>  End With
>  Sh.Activate: Set Sh = Nothing
>End Sub

で副タイトル行のある4列の例題を作って変換処理テストを行った結果、正常に変換できることが確認できました。
行列処理を行って一気に変換という素晴らしい技に感激しました。胸につかえていた処理が一気にできるようになり、ほんとうにどうもありがとうございました。
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 質問

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