Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


12551 / 13646 ツリー ←次へ | 前へ→

【9874】DropDownsについて grumpy 03/12/19(金) 15:57 質問
【9875】Re:DropDownsについて INA 03/12/19(金) 16:02 回答
【9887】Re:DropDownsについて Kein 03/12/19(金) 18:03 回答
【9891】Re:DropDownsについて grumpy 03/12/19(金) 19:16 質問
【9895】Re:DropDownsについて Kein 03/12/19(金) 22:58 回答
【9961】Re:DropDownsについて grumpy 03/12/25(木) 17:54 お礼

【9874】DropDownsについて
質問  grumpy  - 03/12/19(金) 15:57 -

引用なし
パスワード
   excel95で作成されたVBAがあるのですが、
それをXPに移行しようとしています。

excel95では、
  With DialogSheets("mm氏名")
    If .DropDowns("drp_肩書き1").Caption = "" Then GoTo 肩書き1error
  End with
と、書いてあります。
XPでは、DialogSheetsはDropDownsが使用されないみたいです。
あと、コンボボックス(drp_肩書き1)は、コントロールツールボックスではなく、
フォームのドロップダウンコンボボックスを使っています。

XPではどのように書いたらよいのでしょうか?
どなたか、よろしくお願いいたします。

【9875】Re:DropDownsについて
回答  INA  - 03/12/19(金) 16:02 -

引用なし
パスワード
   excel95はよく分からないので、
どのようなものを作りたいのか、仕様を教えていただけませんか?

【9887】Re:DropDownsについて
回答  Kein  - 03/12/19(金) 18:03 -

引用なし
パスワード
   >excel95で作成されたVBAがあるのですが、
>それをXPに移行しようとしています
Excel97以降では、そのコードを書き直しただけでは動きません。
なぜなら DialogSheet は、文字通り Sheet ですから、まずそれを挿入して
コントロールを配置しなければならないのです。もしユーザーフォームで
やるなら、そのコードは全く不要になります。書き直すとかいう次元の問題では
ないからです。DialogSheet は、ワーク−シートのシートタブを右クリックし、
「挿入」で "MS EXCEL5.0ダイアログ" を選択します。シート名をコードのとおり
変更し、フォームツールバーからコンボボックス(DropDown)を選んで配置して下さい。
DropDownの方は、名前を変更して使うより、インデックスで指定する方が良いです。

DialogSheets("・・・").DropDowns(1)

などとします。

【9891】Re:DropDownsについて
質問  grumpy  - 03/12/19(金) 19:16 -

引用なし
パスワード
   返答ありがとうございます。
そう、keinさんの書いてあることをやっているのですが。。。
私の説明が下手なせいもあり、まだわからないことがあるので教えて下さい。

元(excel95で開発した)のファイルには、DialogSheetsの上に、
テキスト、コンボボックスなどが貼り付けてありました。
95のファイルをXPで開けたところエラーで開きませんでした。
その原因がコンボボックスだったので、95で開きコンボボックスのみを削除し、
保存したファイルをXPで開けました。

DialogSheetsの上のテキストなどは正常に動作しているので、
同様、フォームツールバーからコンボボックス(DropDown)を選んで配置しました。
DialogSheets("mm氏名").DropDowns("drp_肩書き1")
と、DropDownsでエラーになります。
XP上で、DialogSheetsのコンボボックスはどのように明記したらよいのですか??

【9895】Re:DropDownsについて
回答  Kein  - 03/12/19(金) 22:58 -

引用なし
パスワード
   >XP上で、DialogSheetsのコンボボックスはどのように明記したらよいのですか??
そりゃ、DropDownはDropDownと書くよりしょうがないです。で、先にも書いたように
まずインデックスで指定できないか、やってみることですね。
それがダメならさっぱりあきらめて、ユーザーフォームで1から作り直すことです。
DialogSheetは普通のシートのように、削除してしまうことができます。

【9961】Re:DropDownsについて
お礼  grumpy  - 03/12/25(木) 17:54 -

引用なし
パスワード
   フォームコントロールのコンボを張りなおしたら
今までどおりのソースで問題なく動作しました。
ありがとうございました。

12551 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free