
No.2ベストアンサー
- 回答日時:
>この場合、ご説明頂いたような、("a1")のように特定のセルを記述する方法だとうまくいかないのです。
別に数が増えただけで、基本的に出来ますよ
'書き込みボタン
Private Sub CommandButton1_Click()
Select Case ComboBox1
Case "第1分冊_テキスト"
rtn0 = ComboBox1.Value
rtn1 = Range("E7").Value
rtn2 = Range("H7").Value
rtn3 = Range("I7").Value
rtn4 = Range("I7").Interior.Color
Range("H7") = Range("E7").Value
Range("I7").Interior.Color = vbYellow
Range("I7") = ""
Range("E7") = TextBox1.Value
TextBox1 = ""
Case "第1分冊_添削問題"
rtn0 = ComboBox1.Value
rtn1 = Range("E8").Value
rtn2 = Range("H8").Value
rtn3 = Range("I8").Value
rtn4 = Range("I8").Interior.Color
Range("H8") = Range("E8").Value
Range("I8").Interior.Color = vbYellow
Range("I8") = ""
Range("E8") = TextBox1.Value
TextBox1 = ""
End Select
End Sub
'戻すボタン
Private Sub CommandButton2_Click()
Select Case rtn0
Case "第1分冊_テキスト"
Range("E7").Value = rtn1
Range("H7").Value = rtn2
Range("I7").Value = rtn3
Range("I7").Interior.Color = rtn4
Case "第1分冊_添削問題"
Range("E8").Value = rtn1
Range("H8").Value = rtn2
Range("I8").Value = rtn3
Range("I8").Interior.Color = rtn4
End Select
End Sub
同じ処理なので、後半端折りました
ComboBoxの値も変数へ取り込み
書き込みの時と同じように、その変数でselect caseで判断すればよいのです
ここに気づけば、最初の回答と同じ処理でいけますよね
なるほど、大変勉強になりました。
なんとか、思っていた通りに処理することが出来るようになりました。
どうもありがとうございました!
No.1
- 回答日時:
詳細が無いので要点だけ
textboxからセルへ書き出しは
range("a1").value=userform1.textbox1.value
のようにしてるとして
セルへ書き出す前に、セルの値を他のセルや変数に書き出す必要があります
例として
1 他のセルに記憶しておく(シート2のA1)
worksheets("sheet2").range("a1").value=userform1.textbox1.value
range("a1").value=userform1.textbox1.value
2 変数に記憶しておく(変数=abc)
abc=userform1.textbox1.value
range("a1").value=userform1.textbox1.value
戻す場合は
1 セルに記憶したものを戻す
range("a1").value=worksheets("sheet2").range("a1").value
2 変数に記憶したものを戻す
range("a1").value=abc
基本的にはこのような方法になるかと思います
注意点は、2の変数は宣言セクションで宣言しなければいけません
分からない単語等は、自分で調べてね
分かりやすい、ご回答ありがとうございます。
大変参考になりました。
私の説明不足で大変恐縮なのですが、実はフォーム内の
コンボボックスで選んだ項目に応じて、入力が行われるセルが
変わる仕組みになっているのです。
この場合、ご説明頂いたような、("a1")のように特定のセルを記述する方法だとうまくいかないのです。
『以下抜粋』
Private Sub CommandButton1_Click()
Select Case ComboBox1
Case "第1分冊_テキスト"
rtn1 = ("E7")
rtn2 = ("H7")
Range("H7") = Range("E7")
Range("I7").Interior.Color = vbYellow
ActiveCell.Value = ""
Range("E7") = TextBox1
TextBox1 = ""
Case "第1分冊_添削問題"
Range("H8") = Range("E8")
Range("I8").Interior.Color = vbYellow
Range("I8") = ""
Range("E8") = TextBox1
TextBox1 = ""
Case "第1分冊_答案"
Range("H9") = Range("E9")
Range("I9").Interior.Color = vbYellow
Range("E9") = TextBox1
TextBox1 = ""
Case "第1分冊_模範"
Range("H10") = Range("E10")
Range("I10").Interior.Color = vbYellow
Range("E10") = TextBox1
TextBox1 = ""
End Select
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
select caseの入れ子
-
Excel UserForm の表示位置
-
「段」と「行」の違いがよくわ...
-
Excel VBAでのWorksheet_Change...
-
マクロの「SaveAs」でエラーが...
-
VBAマクロ実行時エラーの修正に...
-
エクセルVBA 配列からセルに「...
-
土日の列幅の自動変更を教えて...
-
VBA シートをコピーする際に Co...
-
Worksheets メソッドは失敗しま...
-
Excel グラフのプロットからデ...
-
【マクロ】実行時エラー '424':...
-
Cellsのかっこの中はどっちが行...
-
VBAを使って検索したセルをコピ...
-
VBAで結合セルを転記する法を教...
-
エクセルVBAが途中で止まります
-
EXCELで最後の行を固定
-
エクセル マクロで数値が変っ...
-
エクセルで離れた列を選択して...
-
マクロ実行後に別シートの残像...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
あああ..ああい..ああう とい...
-
select caseの入れ子
-
エクセルで選択したセルがディ...
-
VBAバーコード照合 バーコード...
-
エクセルを開いたらカウントし...
-
ListBox1 ListBox2 条件抽出
-
VBAにて『元に戻すボタン』を作...
-
指数関数近似を行うプログラム...
-
vbs 文字位置を中央に
-
再帰構造のアルゴリズムで困っ...
-
打込み作業の自動化
-
エクセルVBAで、ユーザーボック...
-
配列の値を保持しながら要素を...
-
スペース区切りのAND検索
-
VBA sum ワークシートChange
-
【マクロ】実行時エラー '424':...
-
「段」と「行」の違いがよくわ...
-
Excel UserForm の表示位置
-
エクセルで離れた列を選択して...
-
マクロの「SaveAs」でエラーが...
おすすめ情報