教えて下さい。 ゼロ埋めをしたいのですが

教えて下さい。 ゼロ埋めをしたいのですが With Worksheets(1) .Cells(1, 1).Value = Textbox1.text For t = 1 To 24 Step 1 .Cells(1, 1).Offset(t, 0) = Textbox1 + int((t-1)/3) Next End With 上記のTextbox1を 1を入力したら0001, 353→0353 という様に常に4桁表示にする方法を教えて下さい

補足

回答ありがとうございます。 Textbox1.text = 1 を入力すると A列の書式設定をNo,0001という様にするにはどうしたらいいのか 教えて下さい

Visual Basic264閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

---補足に対して--- A1も書式を同じにするなら7行目の左端の ' を削除します。 一般的にNo.のように "."を使いますのでそのようにしました。 このままではA1は、TextBoxと同じ表示です。 まぁ、その辺は 自由に変えてください。 \の右1つが そのまま表示されます。 Sub test() Dim t As Long With Worksheets(1).Range("A1") .Resize(25).NumberFormatLocal = "@" .Resize(25).HorizontalAlignment = xlRight .Value = TextBox1.Text ' .Value = Format(TextBox1.Value, "\N\o\.0000") ' <-- A1も書式設定する場合 For t = 1 To 24 .Offset(t, 0) = Format(TextBox1.Value + Int((t - 1) / 3), "\N\o\.0000") Next End With End Sub ----------- > 上記のTextbox1を1を入力したら0001 ちょっと意味が・・・? シートの表示のことなのかTextBoxの表示のことなのか判らないのですが、シートの方だとして こんな感じで如何でしょうか。 Sub test() Dim t As Long With Worksheets(1).Range("A1") .Resize(25).NumberFormatLocal = "0000" .Value = TextBox1.Text For t = 1 To 24 .Offset(t, 0) = .Value + Int((t - 1) / 3) Next End With End Sub ・TextBoxの方なら こんな感じ。 そのシートのモジュールに記述します。 Private Sub TextBox1_Change() With ActiveSheet.TextBox1 .Value = Format(.Value, "0000") End With End Sub

ThanksImg質問者からのお礼コメント

"\N\o\.0000" ← \ の使い方が勉強なりました。 ありがとうございました

お礼日時:2011/10/19 16:09

その他の回答(1件)

0

dimでstring型を宣言して、それに代入したらむりかな? セルの設定を文字にする 数字をイントとかの変数にいれる format関数で形指定して代入でどうです!