ここから本文です

VBAについて質問です。

mkio0102さん

2018/1/1514:27:16

VBAについて質問です。

ネットでVBAのフォーム作成のやり方が書いてあったので、そのまま順を追って作成したのですが(テキストボックスが3つ(名前、住所、電話番号)とオプションボタンが2つ(性別)、登録ボタンを押すと上記4つがエクセルに入力される)、そのフォームを呼び出すには、エクセル上にボタンなどを作って、それにフォームを呼び出すコードを登録するしかないのでしょうか?

また、VBAから挿入でフォームを作成するのと、同じようなことはエクセルの開発タブにある挿入からでも、できるでしょうか?
一応見る限り、エクセルの開発タブの中にも、挿入というのがあるので、VBAの挿入のフォームのようにキレイなホームじゃなくても、直接セルに値を入力するようさせて(フォームのテキストボックスの代替え)、ボタンにマクロを登録して、ボタンを押したら、該当のセルに対して処理を行うようにすればいいのでしょうか?

初心者なので、教えていただけると助かります。
よろしくお願いします。

閲覧数:
60
回答数:
2
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

2018/1/1514:48:59

標準モジュールにユーザーフォームを呼び出すコードを書き、そのコードをボタンに登録するなどしてユーザーフォームを呼び出すのが一般的です。
シート上にフォームコントロールの一部(テキストボックスやリストボックス等)を設置することはできますが、挿入でユーザーフォーム自体を差し込むことはできません。
設置したコントロール一つ一つに設定をしないと動きません。

やりたい内容によりますが、VBAのユーザーフォームではなく、Excelの機能でフォームという機能がありますので、そちらを使用しても良いと思います。

  • 質問者

    mkio0102さん

    2018/1/2202:03:25

    ありがとうございます。

    やはり、自分が思っていたことはできなそうですね。
    エクセルが開いたら、フォームが開いた状態なのが理想なんです。

    ありがとうございました。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜1件/1件中

プロフィール画像

カテゴリマスター

akatonboさん

2018/1/1514:45:09

それにフォームを呼び出すコードを登録するしかないのでしょうか?
ありますが どうされたいのかが 書いてないので できますとは 回答できません。

コントロールボックスは ほとんど一緒です。
ユーザフォームは それをまとめて表示するものと考えればいいでしょう。
userformに 配置しないで シート上に配置しても かまいませんが
邪魔です。一つか二つのコントロールボックスなら それでもかまいませんが3つ4つにになると そのボックスが何をするためのボックスか ラベルもつける必要があります。
その数のボックスをシート状におけば 邪魔でしょうがない。
必要な時だけ呼び出し 不要な時は消す。
その為にボックス一つずつ 出したり消したりする手間など したくはありません。
userform上においておけば 全部まとめて処理ができます。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。