| ユーザーフォームからの転記(条件により転記しないようにするには) | |
|---|---|
[195540] ユーザーフォームからの転記(条件により転記しないようにするには)- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ ぐり -(2023/01/25(10:55)) □U R L/ 初めて質問させていただきます。
このような書き方でよいのかわからないのですが、お教えいただけると助かります。
<やりたいこと>
・セルA1〜A5に、式または数値が入っているsheetが複数有り(実際にはもっと複数のデータがあります)
・ユーザーフォーム内のTextBox1〜5には、セルA1〜A5に入力されている数値を初期値として表示
・sheetにより、式が入っているセルは違う
・ユーザーフォームは同じものを使用し、TextBox1〜5の数値を変更し転記したい
ただし、A1〜A5に式が入っていた場合は、変更不可のメッセージを表示し初期値に戻す。
Private Sub UserForm_Initialize()
TextBox1.Value = Range("A1").Value
TextBox2.Value = Range("A2").Value
TextBox3.Value = Range("A3").Value
TextBox4.Value = Range("A4").Value
TextBox5.Value = Range("A5").Value
End Sub
Private Sub CommandButtonOK_Click()
If Range("A1").HasFormula Then
MsgBox "A1には式が入っていますので、数値の転記はできません。" & vbCrLf & "初期設定に戻します。", vbOKOnly, "確認"
Else
Range("A1").Value = TextBox1.Value
End If
If Range("A2").HasFormula Then
MsgBox "A2には式が入っていますので、数値の転記はできません。" & vbCrLf & "初期設定に戻します。", vbOKOnly, "確認"
Else
Range("A2").Value = TextBox2.Value
End If
If Range("A3").HasFormula Then
MsgBox "A3には式が入っていますので、数値の転記はできません。" & vbCrLf & "初期設定に戻します。", vbOKOnly, "確認"
Else
Range("A3").Value = TextBox3.Value
End If
If Range("A4").HasFormula Then
MsgBox "A4には式が入っていますので、数値の転記はできません。" & vbCrLf & "初期設定に戻します。", vbOKOnly, "確認"
Else
Range("A4").Value = TextBox4.Value
End If
If Range("A5").HasFormula Then
MsgBox "A5には式が入っていますので、数値の転記はできません。" & vbCrLf & "初期設定に戻します。", vbOKOnly, "確認"
Else
Range("A5").Value = TextBox5.Value
End If
'データ移動後データをクリアする
Dim Ctrl As Control
For Each Ctrl In Controls
If TypeName(Ctrl) = "TextBox" Then _
Ctrl.Value = ""
Next Ctrl
MsgBox "登録しました。", vbOKOnly, "登録完了"
Unload Me
End Sub
これを実行すると、TextBox1〜5の数値が変わっていない時にもにエラーメッセ時が表示されてしまいます。
私が思っているようなことは出来るのでしょうか。
この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ | |
[195542] Re[1]: ユーザーフォームからの転記(条件により転記しないようにするには)- ■記事引用/メール受信=OFF■ □投稿者/ マナ -(2023/01/25(12:35)) □U R L/ ・数式セルの場合は、テキストボックスに表示した値を変更できないようにする ・値を変更したテキストボックスのみ、セルに転記する | |
[195543] Re[2]: ユーザーフォームからの転記(条件により転記しないようにするには)- ■記事引用/メール受信=OFF■ □投稿者/ ぐり -(2023/01/25(12:53)) □U R L/ やりたいことは、仰る通りです。 ですが、なかなか方法が見つかℛず(思いつかず)悩んでおり、質問させて頂きました。 | |
[195544] Re[3]: ユーザーフォームからの転記(条件により転記しないようにするには)- ■記事引用/メール受信=OFF■ □投稿者/ マナ -(2023/01/25(13:52)) □U R L/ テキストボックスを入力禁止・編集禁止にする ht tps://excel-excel.com/tipsctr/vbac_33.html | |
[195545] Re[4]: ユーザーフォームからの転記(条件により転記しないようにするには)- ■記事引用/メール受信=OFF■ □投稿者/ ぐり -(2023/01/25(14:21)) □U R L/ 最初のヒントを元に解決することが出来ました。 ありがとうございました。 ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ | |
[195546] Re[5]: ユーザーフォームからの転記(条件により転記しないようにするには)- ■ □投稿者/ ぐり -(2023/01/25(14:23)) □U R L/ すみません、チェックを入れ忘れていました... ++++++++++++++++++++ OS ⇒OTHER Version⇒OTHER ++++++++++++++++++++ | |
| このトピックに書きこむ |
|---|