
No.2ベストアンサー
- 回答日時:
こんにちは!
一例です。
入力する列はA列とします。
>D1セルの11文字目以降はH1のセルに・・・
とありますが、列方向に関しては規則性がないみたいですね!
シートモジュールです。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim tmp As String
If Application.Intersect(Target, Range("A:A")) Is Nothing Or Target.Count <> 1 Then Exit Sub
Application.EnableEvents = False
tmp = Target
With Target
.Value = Left(tmp, 10)
.Offset(, 3) = Mid(tmp, 11, 10)
.Offset(, 7) = Mid(tmp, 21, 10)
End With
Application.EnableEvents = True
End Sub
※ A列は「文字列」とします。
※ H列までのコードですので、31文字以上は別途コードを追加してやる必要があります。
これでA列に文字列を入力してみてください。m(_ _)m
早々のご回答ありがとうございます。
31文字以上ありましたので、別途コードを追加して
理想のフォーマットを作成することができました!
かなり悩んでいたので本当に助かりました!
重ねてありがとうございますm(_ _)m
No.1
- 回答日時:
セルに入力できる文字数を10文字に制限するという発想ではなくて、
セルA1のに入力された文字を、10個単位の文字列に分割し、
所定のセルに分割した文字列を転記するマクロ構文を書きます。
(11個目以降は、4列ごとに転記するものとしました。)
AA=Cells(1,1).value
A=Len(AA)
B=Application.WorksheetFunction.Roundup(AA/10,0)
Cells(1,1)=Left(AA,10)
AA=Right(AA,Len(AA)-10)
For C=1 To B-1
Cells(4*C,1)=Left(AA,10)
AA=Right(AA,Len(AA)-10)
Next C
早々のご回答ありがとうございます。
エラーが出てしまって、うまく動作しないのですが
引き続きトライしてみます。
また何かありました際はアドバイスいただけましたら幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで教えて下さい。 2 2022/05/18 13:00
- Excel(エクセル) 【Excel】複数列ごとに取得するセルを変更したい 2 2023/03/23 21:04
- Visual Basic(VBA) エクセルVBAについて 2 2023/01/31 16:21
- Excel(エクセル) VBA カゥントで数値の範囲を規制 1 2022/05/20 06:20
- Excel(エクセル) Excelにの以下の設定方法について教えてください! C列にデータ入力の設定をしています。(出、入を 3 2022/06/22 01:33
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) エクセルでセルに何らかの文字が入力されたらそれを任意の数値として認識させる方法がしりたいです。 3 2023/03/16 20:19
- Excel(エクセル) エクセルの書式設定の表示形式で設定した文字を文字列としてコピーしたい 1 2022/12/21 10:41
- Excel(エクセル) Excelについて▶あるセルに文字を入力すると、別のセルに色がつく(条件付き書式) 1 2022/03/27 16:43
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで指定した日付から過去の...
-
エクセルvbaで、別シートの最下...
-
セルに貼り付けた画像の上から...
-
VBA初心者です。結合セルを保持...
-
ExcelVBAを使って、値...
-
Excel vbaで特定の文字以外が入...
-
VBAでセルをクリックする回...
-
特定のセルが空白だったら、そ...
-
エクセルvba:自己セルの情報取...
-
最後のデータ行の任意のセルの...
-
Excle VBA Findメソッドについて
-
VBA初心者です。 VBAで行単位で...
-
エクセルVBAでのセル番地取得プ...
-
excelで置換をしたいんですが
-
SPREADでセルの連結
-
Excel2003 複数セル1列の入力済...
-
エクセルVBAの”TextToColumns”...
-
【VBA】指定したセルと同じ値で...
-
【Excel VBA】指定行以降をクリ...
-
TODAY()で設定したセルの日付...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelVBAを使って、値...
-
Excelで指定した日付から過去の...
-
エクセルvbaで、別シートの最下...
-
i=cells(Rows.Count, 1)とi=cel...
-
特定のセルが空白だったら、そ...
-
Excelのプルダウンで2列分の情...
-
【Excel VBA】指定行以降をクリ...
-
任意フォルダから画像をすべて...
-
VBAでセルをクリックする回...
-
”戻り値”が変化したときに、マ...
-
VBA実行後に元のセルに戻りたい
-
Excel vbaで特定の文字以外が入...
-
【VBA】シート上の複数のチェッ...
-
Excel VBA マクロ ある列の最終...
-
Excel VBAで、 ヘッダーへのセ...
-
DataGridViewの各セル幅を自由...
-
VBからEXCELのセルの値を取得す...
-
EXCELのVBA-フィルタ抽出後の...
-
VBAでセル同士を比較して色付け
-
Application.Matchで特定行の検索
おすすめ情報