• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルVBA初心者です。)

エクセルVBA初心者のためのセル上書き方法

このQ&Aのポイント
  • エクセルVBA初心者がユーザーフォームを使ったセルの上書き方法について質問しています。
  • 質問者はリストボックスを使用し、セルの内容を上書きする方法を知りたいとしています。
  • 具体的な例として、「みかん」という文字を選択し、テキストボックス1に「バナナ」、テキストボックス2に「3」と入力すると、指定のセルが「バナナ 3」となるようにしたいとのことです。

質問者が選んだベストアンサー

  • ベストアンサー
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.1

質問の表と提示されているコードが矛盾しているので 説明しにくいので、質問の表で流れの説明をします userform1が表示されている状態から userform1のlistbox1のlistから「みかん」を選択 commandbutton1をclick ここで >Unload UserForm1 するのではなく userform1.hide で非表示にする事により 表示はされていないが、userform1の値が参照できる userform2の表示 textbox1及びtextbox2を変更する commandbutton1をclick(説明に無いのでclickで上書き処理とします) 表の先頭がセルA1ですので、セルA1を基準にする listboxの選択行をlistindexで取得すると先頭行は0、2行目は1・・ の様に 選択行-1 となるのを利用しoffsetで入力セルを求める range("a1").offset(userform1.listbox1.listindex).value=userform2.textbox1.value これで、セルA2の「みかん」部分の上書きができる range("a1").offset(userform1.listbox1.listindex,1).value=userform2.textbox2.value セルB2の数字の部分の上書きをします 以上、参考まで

kamioni
質問者

お礼

問題は解決しました。説明等、つたない点があったのにも関わらず、丁寧なご説明、ありがとうございましたm(__)m

関連するQ&A

専門家に質問してみよう