プロが教えるわが家の防犯対策術!

エクセルVBA初心者です。
エクセルVBAのコードについて教えてください。

現在,画像のように,ユーザーフォーム画面にデータを入力し,フォームの「更新」ボタンを押すと,エクセルシートのデータが更新されるようなコードを書きたいと思っています。
※質問内容が分かりやすいように,なるべく簡素化しています。
今回の例であれば,エクセルデータのj,k,lをm,n,oに置き換える(更新する)ような形です。

「更新」ボタンのクリック時のコードとして,どのように書けばよいでしょうか。
WorksheetFunctionでVlookupを使えばできるかな?と思い,試したところ

textbox1.value(0004)をエクセルシート(sheet1)のA:D列で探し,指定した列番号の値を返す(=j,k,l)ことはできても,それをm,n,oに上手く置き換える方法が分かりません。

初歩的な質問で申し訳ないですが,コードをご教授いただけると幸いです。
宜しくお願い致します。

「エクセルVBAのコードを教えてください」の質問画像

A 回答 (1件)

こんにちは、


書き換えると言う事でしょうか?
例えば、こんな事?
Private Sub CommandButton1_Click()
Dim i As Integer
Dim Trg As Range
Set Trg = Sheets("Sheet1").Range("A:A").Find(TextBox1.Value)
For i = 2 To 4
Trg.Offset(, i - 1).Value = Controls("TextBox" & i).Value
Next
End Sub

エラー処理は行っていません。
    • good
    • 1
この回答へのお礼

ありがとうございます。
やってみたいと思います!

お礼日時:2021/03/26 21:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!