ExcelのVBAを使用して、シートにコントロールを動的に追加する方法を調べています。Controls.AddメソッドはFormだけで、Sheetには使用できませんでした。よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:teatime_miki No.1

回答回数88ベストアンサー獲得回数0

ポイント17pt

シートの削除と追加方法です。他にも移動、コピーもこちらのサイトで紹介されていますので参考になると思います。

id:suke-sdk

ありがとうございます。実はシートの追加方法ではなく、シートにテキストボックスなどのコントロールを追加する方法なのです。

2004/09/03 02:01:11
id:teatime_miki No.2

回答回数88ベストアンサー獲得回数0

ポイント17pt

http://www.hatena.ne.jp/1094143227#

ExcelのVBAを使用して、シートにコントロールを動的に追加する方法を調べています。Controls.AddメソッドはFormだけで、Sheetには使用できませんでした。よろしくお願いし.. - 人力検索はてな

2度目の回答ですので、ポイントは結構です。

質問の内容を勘違いしてましたので、訂正を。

controlsはフォームの属性ですので、controls.addではおっしゃるとおりフォームの追加しかできません。

テキストボックスを増やしたりする方法はなかったと思いますが、プロパティのvisibleをfalesにすることで表示されなくなりますので、それを利用する手はあります。

具体的には複数のテキストボックスを貼り付けておいて、必要のあるものだけvisible=trueで表示させ、あとはfalesで消しておいて、必要に応じてプロパティを変更するという方法で対応したことがあります。

id:suke-sdk

たびたびありがとうございます。なるほど、最初は隠しておくという方法がありますね。ありがとうございます!

2004/09/03 07:42:14
id:cx20 No.3

回答回数607ベストアンサー獲得回数108

ポイント18pt

こういうのでしょうか?

「図形操作関連のテクニック」の一覧です。

id:suke-sdk

おお。テキストボックスは動的に追加できるんですね。ドロップダウンリストはできるのかな…。試してみます。

2004/09/03 07:43:23
id:DreamBug No.4

回答回数9ベストアンサー獲得回数0

ポイント18pt

http://www.microsoft.com/

Microsoft Corporation

私が使っていたテクニックとしては

使う可能性があるコントロールを全部配列0&非表示で貼り付けておき

使うときに配列を拡張して2番目(1)以降を

使いたいところに持っていくやり方をしていました

数があまり多くないのであれば全部非表示->表示でもいいですが、

この辺はコントロール内部のプログラムの類似性で選べばよいかと思います

id:suke-sdk

なるほど。やはり、用意しておいて表示するという方法が一番簡単そうですね。ありがとうございました。

2004/09/03 13:08:25

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません