[[20210121152503]] 『先頭に空白がある行でその空白の数だけ列をセルの』(Ryota) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『先頭に空白がある行でその空白の数だけ列をセルの前に追加する方法』(Ryota)

宜しくお願い致します。
以下のような場合でエクエルの機能でどのようにすればよいのか、ご教示ください。
以下のようなデータがあるとします。空白(半角スペース)を△としています。
※1つのセルの中に△△福岡県、△△△△千葉県というようにデータがあります。

1行目 △△福岡県
2行目 △△△△千葉県
3行目 △沖縄県
4行目 △△△△△△栃木県

このようなデータを以下のようにしたいと思っています。

1行目 | | |福岡県
2行目 | | | | |千葉県
3行目 | |沖縄県
4行目 | | | | | | |栃木県

※1行目の福岡県のセルの前に2列の空白列をいれる。
 2行目の千葉県のセルの前に4列の空白列を入れる。
 3行目の沖縄県のセルの前に1列の空白列を入れる。
 4行目の栃木県のセルの前に6列の空白列を入れる。

以上、宜しくお願い致します。

< 使用 Excel:Office365、使用 OS:Windows10 >


 その列を選択後、データ-データツール-区切り位置を開き列のデータの形式にカンマやタブなどの…を選択して次へ。
 区切り文字のスペースにチェックを入れ、右の連続した区切り文字は1文字として扱うのチェックを外して完了ではどうだろうか?
(ねむねむ) 2021/01/21(木) 15:49

 データの列を選択データ→区切り位置→カンマやタブなどの区切り文字によって〜
 →次へ→スペースにチェックし、連続した区切り文字は1文字として扱うのチェックを外す
 →完了

 ではどうでしょうか?

 あぁ、タッチの差で…
(コナミ) 2021/01/21(木) 15:51

ねむねむさん、コナミさん早速のご連絡ありがとうございます。
試してみて、また連絡します。
(Ryota) 2021/01/21(木) 22:50

ねむねむさん、コナミさん早速のご連絡ありがとうございます。
試して、通常のデータは問題なくできたのですが、特定の行で文字と文字の間に空白があるので、それを拾わずに先頭の空白のみを判別して空白列を入れる事は可能でしょうか。

1行目 △△福岡県
2行目 △△△△千葉県
3行目 △沖縄県
4行目 △△△△△△栃木県
5行目 △埼玉県△△さいたま市
6行目 △△東京都△△△大田区

1行目 | | |福岡県
2行目 | | | | |千葉県
3行目 | |沖縄県
4行目 | | | | | | |栃木県
4行目 | |埼玉県さいたま市
4行目 | | |東京都大田区

のように先頭にある空白△の数だけ、各セルの先頭に空白列を入れることは可能でしょうか。

すみませんが、ご教示頂けると助かります。

(Ryota) 2021/01/21(木) 23:31


Sub main()
    Dim dt, i As Long, c As Range
    For Each c In Range("A:A").SpecialCells(2)
        ReDim dt(UBound(Split(c.Value, Space(1))))
        For i = 1 To Len(c.Value)
            If Mid(c.Value, i, 1) <> Space(1) Then Exit For
        Next i
        c.Value = Space(i - 1) & Replace(Mid(c.Value, i), Space(1), "")
        For i = 0 To UBound(Split(c.Value, Space(1)))
            dt(i) = Split(c.Value, Space(1))(i)
        Next i
        c.Resize(, UBound(Split(c.Value, Space(1))) + 1) = dt
    Next c
End Sub
(mm) 2021/01/25(月) 12:27

mmさん
ご連絡ありがとうございます。
試させて頂きます。

ありがとうございます。
(Ryota) 2021/01/26(火) 00:37


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.