- ベストアンサー
エクセルのマクロで入力文字を一文字ずつ並んだセルに入れる
エクセルマクロ超初心者です。 エクセルVBAでユーザーフォームを作成しました。 テキストボックスに入力した文字列を「登録」ボタン押下後、エクセルシートのセルに一文字づつ入るようにするにはどうすれば良いでしょうか? 例えばテキストボックスに「kohiro」と入力するとエクセルのsheet1のA1「k」、B1「o」、C1「h」、D1「i」、E1「r」、F1「o」となるようにしたいのです。入力する文字数は0~30文字までで、その都度長さは変わります。どうやって、文字をばらせばいいのか、またどうやって可変長の文字列を指定したセルに入力すればいいのかわかりません。どうかよろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#2の者ですが、一部ミスがありましたので下記の通り訂正させて頂きます。 Dim AA As String Dim a, b As Integer 'AAには、テキストボックスの値を代入してください。 AA = "wildcard" a = Len(AA) For b = 1 To a Cells(1, b).Value = Mid(AA, b, 1) Next b
その他の回答 (2)
- wildcard
- ベストアンサー率54% (54/100)
こんな感じでしょうか?len関数で文字列の長さを求め、 Forループを利用しながら、mid関数で文字を抽出すると言う方法です。 Dim AA As String Dim a, b As Integer 'AAには、テキストボックスの値を代入してください。 AA = "wildcard" a = Len(AA) For b = 1 To a Cells(1, c).Value = Mid(AA, b, 1) Next b
- taknt
- ベストアンサー率19% (1556/7783)
aにテキストの文字列をセットします。 for b=1 to len(a) Range("A" & b).Value=Mid(a,b, 1) next 未確認ですが、こんな感じでどうでしょうか?
お礼
出来ました!感動です!本当に嬉しいです。 ありがとうございました。さらに質問をしています。是非お力を貸してください!!