アプリ版:「スタンプのみでお礼する」機能のリリースについて

ユーザーフォームを起動した状態でセルをクリックするたびに、
クリックしたセルの値をユーザーフォーム内のテキストボックスへ表示するには、
どのようなコードにすればよいのか教えてください。

A 回答 (1件)

こんばんは!



ユーザーフォーム内のテキストボックスのオブジェクト名は「TextBox1」とします。

>ユーザーフォームを起動した状態で・・・

というコトですので、シート上にコマンドボタンなりを挿入し
それをクリックすると「ユーザーフォーム」が表示されるという前提です。

そして、「クリック」ではなくセルを「ダブルクリック」すると
ユーザーフォームのテキストボックスにその値が表示されるようにしてみました。

まずユーザーフォームを立ち上げるためのコマンドボタンのコードを↓のようにしてください。

Private Sub CommandButton1_Click()
UserForm1.Show vbModeless
End Sub

次に↓のコードをシートモジュールにしてください。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
With Target
If .Value <> "" Then
Cancel = True
UserForm1.TextBox1 = .Value
End If
End With
End Sub

※ 質問文ではセル範囲が限定されていませんので
すべてのセルを対象としています。m(_ _)m
    • good
    • 0
この回答へのお礼

助かりました

BeforeDoubleClickをSelectionChangeに変えて選択範囲を変更した際に
セルの値を取得するようにするとダブルクリックではなくクリックした際に目的の動作がされるようになりました!

なんとか目的のものが作れそうです!
本当にありがとうございました!!

お礼日時:2017/04/03 22:52

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