No.3ベストアンサー
- 回答日時:
こんにちは、
一例です。
標準モジュールで
Sub Sample()
Dim i As Long, j As Long, n As Long
Dim tmp, arrStr()
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If Cells(i, "A") <> "" Then
tmp = Split(Cells(i, "A"), vbLf)
For j = 0 To UBound(tmp)
ReDim Preserve arrStr(n)
arrStr(n) = tmp(j)
n = n + 1
Next
Else
n = n + 1
End If
Next
'B列に書き出しています。 変更してくださいね
Cells(1, "B").Resize(n).Value = Application.Transpose(arrStr)
End Sub
この回答へのお礼
お礼日時:2020/06/15 17:53
ありがとうございます。希望する通りの処理になりました!
シンプルで初心者にもわかりやすくとても勉強になったので、こちらをベストアンサーに選ばせていただきました。
No.4
- 回答日時:
こんにちは
すでに回答は出ていますので、ご参考までに。
Sub Sample()
Dim r As Range, s
Set r = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
s = Split(Join(Application.Transpose(r.Value), vbLf), vbLf)
'A列に上書きする場合はB1→A1に
Range("B1").Resize(UBound(s) + 1) = Application.Transpose(s)
End Sub
No.2
- 回答日時:
すみません、motoSheet、sakiSheet、i の変数宣言が抜けてました。
Sub Macro1()
Dim motoSheet As Worksheet
Dim sakiSheet As Worksheet
Set motoSheet = Worksheets("Sheet1")
Set sakiSheet = Worksheets("Sheet2")
Dim motoRow As Integer
Dim sakiRow As Integer
Dim workStr As String
Dim workArray() As String
Dim checkRow As Integer
Dim i As Integer
motoRow = 1
sakiRow = 1
checkRow = 0
Do
workStr = motoSheet.Range("A" & motoRow).Value
If workStr <> "" Then
workArray = Split(workStr, vbLf) '改行文字で分割
For i = 0 To UBound(workArray)
sakiSheet.Range("A" & sakiRow).Value = workArray(i)
sakiRow = sakiRow + 1
Next i
Else
If checkRow > 10 Then '空白が10件続いたら終了
Exit Do
End If
checkRow = checkRow + 1
sakiRow = sakiRow + 1 '何も出力しないで次に移動
End If
motoRow = motoRow + 1
Loop
'後処理
Set sakiSheet = Nothing
Set motoSheet = Nothing
End Sub
No.1
- 回答日時:
こんな感じでしょうか。
Sub Macro1()
Set motoSheet = Worksheets("Sheet1")
Set sakiSheet = Worksheets("Sheet2")
Dim motoRow As Integer
Dim sakiRow As Integer
Dim workStr As String
Dim workArray() As String
Dim checkRow As Integer
motoRow = 1
sakiRow = 1
checkRow = 0
Do
workStr = motoSheet.Range("A" & motoRow).Value
If workStr <> "" Then
workArray = Split(workStr, vbLf) '改行文字で分割
For i = 0 To UBound(workArray)
sakiSheet.Range("A" & sakiRow).Value = workArray(i)
sakiRow = sakiRow + 1
Next i
Else
If checkRow > 10 Then '空白が10件続いたら終了
Exit Do
End If
checkRow = checkRow + 1
sakiRow = sakiRow + 1 '何も出力しないで次に移動
End If
motoRow = motoRow + 1
Loop
'後処理
Set sakiSheet = Nothing
Set motoSheet = Nothing
End Sub
とりあえず、別シートに出力するようにしています。
完了後に元シートが不要だったら、最後に「Sheet1」の削除をしてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel VBA 空白行があるセル範囲に色を付ける 3 2022/06/13 15:58
- Visual Basic(VBA) VBA 「,」・空白・カタカナ等の複数条件のマクロ 2 2023/08/23 11:57
- Visual Basic(VBA) 昨日、質問した件『VBA にて、条件付き書式で背景色を設定しているセルの範囲で、背景色付きのセルをカ 4 2022/04/07 14:39
- Visual Basic(VBA) 【VBA】Excelの特定範囲のセルを画像で保存したい 2 2023/01/25 13:06
- Excel(エクセル) VBA 特定の列に入っているテキストをコピペ 2 2023/06/14 11:24
- Excel(エクセル) 条件付き書式の色付きセルのカウント方法について 2 2022/10/21 14:51
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) Vba エクセルマクロで、 A列の、A1セルからA10セルに空白のある行を削除する、のは Range 3 2022/11/05 17:44
- Visual Basic(VBA) 指定列最終行までのスペースを改行するVBAについて 2 2022/06/01 19:50
- Visual Basic(VBA) vba 等間隔の列に対しての計算 6 2022/05/17 20:15
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IF関数で空欄("")の時、Null...
-
エクセルでCSVを編集するとき、...
-
Excelで、入力文字の後に自動で...
-
「データ要素を線で結ぶ」がチ...
-
SUMIFS関数で「計算式による空...
-
ピボットテーブルで空白セルの...
-
色つき行の一括削除は?
-
関数TRANSPOSEで空白セルを0に...
-
VBA スペースが入力されて...
-
excel2010 空白セルにのみ貼り...
-
空白セルにハイフンを表示
-
数式による空白を無視して最終...
-
Excelで"0"を空白に変換する方法
-
空白を0とみなす関数
-
【Excel】 Ctrl+方向キー で空...
-
エクセル 連番が途切れていると...
-
エクセルで、「複数のセルの中...
-
Excel:関数が入っているセルに...
-
エクセルで上の行の値を自動的...
-
【Excel】 csvの作成時、空白セ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
IF関数で空欄("")の時、Null...
-
数式による空白を無視して最終...
-
エクセルでCSVを編集するとき、...
-
ピボットテーブルで空白セルの...
-
Excel > ピボットテーブル「(空...
-
関数TRANSPOSEで空白セルを0に...
-
excel2010 空白セルにのみ貼り...
-
「データ要素を線で結ぶ」がチ...
-
Excel:関数が入っているセルに...
-
Excelで、入力文字の後に自動で...
-
空白セル内の数式を残したまま...
-
色つき行の一括削除は?
-
エクセルで、「複数のセルの中...
-
エクセル 連番が途切れていると...
-
エクセルで上の行の値を自動的...
-
SUMIFS関数で「計算式による空...
-
【Excel】 csvの作成時、空白セ...
-
《Excel2000》SUMPRODUCT関数で...
-
エクセル セルのコピー元が空...
-
空白を0とみなす関数
おすすめ情報