プロが教える店舗&オフィスのセキュリティ対策術

Excelでカンマで区切られた英数字を各セルごとに下方向に一区切りずつ表示させる方法を教えてください。

A 回答 (2件)

こんばんは!



別の列に表示させても良いですか?
VBAでの一例です。
元データはA1セル以降にあり、B列に表示させるとします。

Sub Sample1()
Dim i As Long, k As Long, cnt As Long, myAry As Variant
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If InStr(Cells(i, "A"), ",") > 0 Then
myAry = Split(Cells(i, "A"), ",")
For k = 0 To UBound(myAry)
cnt = cnt + 1
Cells(cnt, "B") = myAry(k)
Next k
Else
cnt = cnt + 1
Cells(cnt, "B") = Cells(i, "A")
End If
Next i
End Sub

こんな感じではどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

ありがとうございます。明日会社へ行き詳しく調べて参ります。本当にすみません。

お礼日時:2017/01/22 20:39

A1にa,bb,ccc,dddd,eeeeeとあれば、A2にa、A3にbb、A4にccc、A5にdddd、A6にeeeeeと表示したいということですね?


各セルに全ての式を入れて表示する事もできますが、中身が長くなってしまうので、可能なら途中の値を表示させる補助的なセルが欲しいところです。

何処に英数字を入力するのか、
カンマで区切られたものは最大でいくつあるのか、
補助として使用できる(もしくはできない)セルはどこか、
教えて欲しいです。

内容としては、FIND(カンマのある位置を探します)LEN(文字数を計算します)LEFT(左から指定した文字数だけ抜き出します)RIGHT(右から同様です)を組み合わせることで可能になります。

補助のセルを使用できるなら、
1つ目のカンマより前を表示させたい1つ目に、そのカンマより後ろを補助セルの1つ目に、と言った感じで可能です。
使用できないなら、一つの式の中で、1つ目のカンマが何文字目で、その次のカンマはそこから何文字目で、更に次のカンマは…と、カンマで区切る数が増えれば増えるだけ長く長くなってしまいます。

情報を貰えれば具体的な内容を記述します。
    • good
    • 0
この回答へのお礼

ありがとうございます!明日会社へ行き詳しく調べて参ります。本当に本当にありがとうございます!

お礼日時:2017/01/22 20:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!