- ベストアンサー
エクセルで文字をばらす方法
今A1のセルに10文字以内の全角の文字列が入っています。 この文字列をばらしてそれぞれ先頭文字から一つづつ セルに格納していきたいのですが可能でしょうか? (例) A1のセルに”はじまして”の文字列が入っている これをばらして A2のセルには "は" B2のセルには "じ" C2のセルには "め" D2のセルには "ま" E2のセルには "し" F2のセルには "て" と入れたいのですが、やり方ご存知の方教えて頂けないでしょうか?よろしくお願い致します
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
以前、似た質問に回答しました。 参考URLをご覧ください。
その他の回答 (4)
- ja7awu
- ベストアンサー率62% (292/464)
> VBAで作成するとき、どうコーディングすればいいのか・・・ > 理想としてはボタン一つ用意し、ボタンを押せば・・・ 質問と補足の内容に忠実にお答えします。 一応VBAコードの設定方法から書きますので、ご存知のときは、 読み飛ばしてください。 ・ Excelのメニューから[表示]-->[ツールバー]-->[コントロールツールボックス] を選択します。 ・ 表示された「ツールボックス」から「コマンドボタン」をクリックし、 シート上の配置したい位置でクリックします。 ・ このコマンドボタンをダブルクリックすると「VBEコードウィンドウ」が、 表示されますので、下記コードをコピーして貼り付けます。 (最初と最後の行は、自動的に表示されます。) ・ Alt+Q または、ウィンドウ最右上の×で閉じてシートに戻ります。 ・ 「コントロールツールボックス」の「デザインモード終了(三角定規)」を クリックします。 ・ セルA1に"はじめまして" を入力し、コマンドボタンを押して、 動作を確認します。 Private Sub CommandButton1_Click() Dim Cnt As Integer For Cnt = 1 To Len(Range("A1").Value) Cells(2, Cnt).Value = Mid(Range("A1").Value, Cnt, 1) Next Cnt End Sub > 10文字以内の全角の文字列・・・ ※ 10文字以上や、半角が混じっているとき、全体を無視するとか、半角部分だけを 飛ばす場合は、その旨書き添えてください。
- imogasi
- ベストアンサー率27% (4737/17070)
A列に全角の文字列が入っているとして Sub test01() d = Range("A1").CurrentRegion.Rows.Count For j = 1 To d s = Cells(j, "A") For i = 1 To Len(s) Cells(j, i + 1) = Mid(s, i, 1) Next i Next j End Sub
- deadline
- ベストアンサー率63% (1239/1943)
セルA2に =MID($A$1,COLUMN(A2),1) と入力して、B2~F2へコピーします。 MID(文字列,開始位置,文字数) 『文字列』中の『開始位置』から『文字数』の文字列を取り出す。 COLUMN(範囲) 『範囲』の『列番号』(A列が1、B列が2・・・)を求める。 ご質問の場合、『開始位置』が『列番号』と同じになるので、COLUMN関数で『開始位置』を求めています。
- Hageoyadi
- ベストアンサー率40% (3145/7860)
A1に「はじめまして」 A2=LEFT(A1,1) A3=MID(A1,2,1) A4=MID(A1,3,1) A5=MID(A1,4,1) ・ ・ ・ です。
補足
即答ありがとうございます。 こちらの説明不足ですいません。 VBAで作成するとき、どうコーディング すればいいのか教えて頂ければ幸いです。 理想としてはボタン一つ用意し、ボタンを押せば 文字列がばらけてセルに格納させたいのですが。。。
補足
即答ありがとうございます。 こちらの説明不足ですいません。 VBAで作成するとき、どうコーディング すればいいのか教えて頂ければ幸いです。 理想としてはボタン一つ用意し、ボタンを押せば 文字列がばらけてセルに格納させたいのですが。。。