OfficeExcel2003を使用しています。
ユーザーフォームのテキストボックスやコンボボックスに文字や数値を入力し、OKボタンを押せばエクセルのセルに記入できるようにしようと思ってます。
フォームはなんとか(形だけですが..)作成できたのですが、そのフォームを呼び出す方法として、入力したい行のA列のセルをクリックすればユーザーフォームが表示されるようにしたいのです。
ネット上でいろいろ検索してみましたがなかなか見つけることができませんでした。
初歩的な質問かもわかりませんが、教えて頂けないでしょうか。
宜しくお願い致します。
No.3
- 回答日時:
厳密には「セルをクリックすればユーザーフォームが表示」させるイベントはありません。
その代わりに#01さんが書かれているダブルクリックイベント(BeforeDoubleClick)を使うか、#02さんのSelection_Changeイベントを使うことになります。ただしSelection_Changeイベントは矢印キーでアクティブセルを移動させてもイベントが発生しますから「マウスのクリック」に限定できません。でもryunohitomiさんだけがそのブックを操作するならどちらの方法でもあまり気にする必要はないですが、もし他人にも操作をさせるなら「何もないセルをクリックすることが操作のきっかけになる」というGUI設計は、そのルールを知らないと操作できませんから好ましくないですね。
やはりシート上にコマンドボタンを配置して、明らかに「これをクリックすればよい」ことがわかる方が親切な設計ではないでしょうか。
もしシートが「スクロールするのでボタンが見えなくなる」というならウィンドゥ枠の固定を行って、スクロールしないエリアにボタンを配置すればよいと思います。
ありがとうございます。
いろいろな方法があるのですね。
今回は私個人がほとんど使用するものですので、見た目がシンプルな方法で考えてました。
アドバイスありがとうございました。
No.2
- 回答日時:
ユーザーフォームを1つ挿入します。
VBE画面で。(1)ユーザーフォーム
(A)その上にテキストボックスを1つ貼り付けます(実際は複数個でも可。例題を簡単にするため)
(B)またその上にテキストボックスを1つ貼り付けます(実際は複数個でも可)
(C)コマンドボタンを1つ貼り付けます。入力完了通知用。
コンボのプロパティはRowSourceにF1:F3といれ、F1:F3のセルには
東京
名古屋
大阪
と入れておく。エクセル向きに書いたもの。プログラムからも設定できる。
ユーザーフォームはShowModalをFalseにしておく。
(2)イベント・プロシ
(A)コマンドボタンのクリックイベントに
Private Sub CommandButton1_Click()
ActiveCell = UserForm1.TextBox1.Text
ActiveCell.Offset(0, 1) = UserForm1.ComboBox1.Text
'---
UserForm1.TextBox1.Text = ""
UserForm1.ComboBox1.Text = ""
UserForm1.Hide
End Sub
を作ります
(B)別にシート(Sheet1)のelectionChangeイベントに
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 Then
UserForm1.Show
End If
End Sub
====
操作について
ー
A列を選択
フォームが出る
氏名を入力、支店名を選択
コマンドボタンをクリック
値がクリックしていたセルのA列とB列にセットされる
フォームが消える
以上繰り返し。
A列の行範囲を限定もコードを変えると可能。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- JavaScript 空白で入力フォームのボタンをクリックしたら、ブラウザの上部からjavascriptで 表示されるアラ 1 2022/05/20 11:16
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- JavaScript ソースコードは下の共有コードサイト「張り紙」にあります。 入力フォームの javascript で 1 2022/05/11 11:01
- Access(アクセス) アクセス 意図せずサブプロシージャを移動してしまうのを止めたい 1 2022/09/02 09:19
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
このQ&Aを見た人はこんなQ&Aも見ています
-
あなたの「必」の書き順を教えてください
ふだん、どういう書き順で「必」を書いていますか? みなさんの色んな書き順を知りたいです。 画像のA~Eを使って教えてください。
-
秘密基地、どこに作った?
小さい頃、1度は誰もが作ったであろう秘密基地。 大人の今だからこそ言える、あなたの秘密基地の場所を教えてください!
-
これ何て呼びますか Part2
あなたのお住いの地域で、これ、何て呼びますか?
-
おすすめのモーニング・朝食メニューを教えて!
コメダ珈琲店のモーニング ロイヤルホストのモーニング 牛丼チェーン店の朝食などなど、おいしいモーニング・朝食メニューがたくさんありますよね。
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
特定のセルを選択した場合にユーザーフォームを表示したい
Excel(エクセル)
-
ダブルクリックしたセルの近くにユーザーフォームを表示したい
Excel(エクセル)
-
エクセルの画面にユーザーフォームでテンキーを表示させたい
Excel(エクセル)
-
-
4
UserForm1.Showでエラーになります。
工学
-
5
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
6
エクセルで各セルをダブルクリックで各入力フォームが出る
Access(アクセス)
-
7
Excel VBA:フォーム←→セルのアクティブ切り替え
Excel(エクセル)
-
8
ExcelのVBAでフォームが表示されない
Excel(エクセル)
-
9
エクセルで、日付を入力すると、別のセルに文字を自動的に表示させるようにするには。
Excel(エクセル)
-
10
XL:BeforeDoubleClickが動かない
その他(プログラミング・Web制作)
-
11
VBAでユーザーフォームにセル値を表示させるには
Visual Basic(VBA)
-
12
VBA フォームのテキストボックスにセルの値を表示させたいが改行していたら改行もあわせて表示させたい
Excel(エクセル)
-
13
Excelにて、ユーザーフォームで作成したテンキーの、表示している数字を セルに転記したい
Yahoo!ショッピング
-
14
任意で選択したセルをテキストボックスに表示
Excel(エクセル)
-
15
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
16
Enterキーでマクロを起動さす。
その他(ソフトウェア)
-
17
実行時エラー'1004': WorkSheetクラスのVisibleプロパティを設定できません
Visual Basic(VBA)
-
18
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
19
コンボボックスにリストが表示されません・・・
Excel(エクセル)
-
20
EXCELマクロを使い、空白行ではさまれた範囲の数字を合計
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBA オプションボタ...
-
EXCEL VBAのユーザーフォームに...
-
エクセルVBAからアクセスフ...
-
ユーザーフォームのスクロール...
-
Accessでエラーメッセージの表...
-
アクセスで「モジュールがあり...
-
ACCESS フォームで、ボタンの...
-
標準モジュールだとエラーにな...
-
コマンドプロンプト使用時に「'...
-
ACCESS カンマをスペースに置...
-
access の 閉じるボタンを無効...
-
Accessでaccdeへ変換で機能しない
-
Autocad LT 引き出し線の上に文...
-
ExcelVBAでセルをクリックして...
-
サブフォームに対してGoToRecor...
-
Access レポート印刷するときに...
-
passwordが入れられません・・・・
-
データベースのINT型項目にNULL...
-
レコードを保存するコード ア...
-
YahooのIDがロックされてしまい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA オプションボタ...
-
EXCEL VBAのユーザーフォームに...
-
ExcelVBAでセルをクリックして...
-
JW-CADのAutoモードの解除はで...
-
Accessでエラーメッセージの表...
-
アクセスで「モジュールがあり...
-
ACCESS フォームでの、データ...
-
Accessでaccdeへ変換で機能しない
-
Notesでアンケートをとりたい
-
コマンドプロンプト使用時に「'...
-
標準モジュールだとエラーにな...
-
エクセルVBAからアクセスフ...
-
ACCESS フォームで、ボタンの...
-
コマンドボタンに色を付けるこ...
-
Access VBAによるフォームの色...
-
ナビゲーションウインドウを非...
-
VBAでマルチページの表示
-
ACCESS カンマをスペースに置...
-
access の 閉じるボタンを無効...
-
ユーザーフォームのスクロール...
おすすめ情報