- 締切済み
VBからExcelのOptionButtonを操作する方法
お世話になります。 いろいろ調べたのですが、答えを見つけられなかったので、質問させていただきます。 --環境-- OS Windows2000 VB 6.0 Office 2000 --目的-- Excelに貼り付けたOptionButtonチェックのON/OFFをVBから操作する。 関係ないことですが、OptionButtonを選択したときに出る OptionButton1=EMBED("Forms.OptionButton.1","") の意味も良くわかりません。 説明不足な点がありましたら、教えて下さい。 ヒントとなることでも結構ですので、宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- pen_pen_pen
- ベストアンサー率65% (52/79)
自力で解決できたんですか。それは良かったですね☆ >ついでに一つお聞きしたいのですが、VBからの操作で、Excelのセル縦幅を、セル内のデータに合わせる方法わかりますか? >(セル内のデータが全て見える状態にするって意味です) 手でやる場合の、行と行の境でダブルクリックするの と同じでいいですか? マクロの記録では下のように出ました。 Rows("7:7").EntireRow.AutoFit なので、 ws.Cells(消したい行番号,1).EntireRow.AutoFit でいいと思います。 >オプションボタンをワークシートに貼り付け、オプションボタンを選択すると、上の式が表示される部分(呼び方知らなくてすみません)で出ました。 ホントだ。出ますね。数式みたいなものが。 試しにこの式を 「=A1」 と、上書きしてみたら、オプションボタンは無くなって四角いオブジェクトができ、セルA1の内容が表示される四角になりました。(意味が分からない文だ。) 一体何なのだろう・・? すみません。回答じゃなくて(笑) 回答っぽい事を言うとすれば、 この数式を書くところは「数式バー」と呼びます。
- pen_pen_pen
- ベストアンサー率65% (52/79)
ワークシートに貼り付けたオプションボタンの事ですよね? そのオプションボタンはワークシートの持ち物なので、 ws.OptionButton1.Value = True とか ws.OptionButton1.Value = False で操作できましたよ。 (wsはオプションボタンを貼り付けたワークシート) ところで、 OptionButton1=EMBED("Forms.OptionButton.1","") ってどこに出るんですか?
補足
Excelで出ました。 オプションボタンをワークシートに貼り付け、オプションボタンを選択すると、上の式が表示される部分(呼び方知らなくてすみません)で出ました。 オプションボタンについては自力で解決出来ました^^; pen pen pen さんと同じ方法でした。 ついでに一つお聞きしたいのですが、VBからの操作で、Excelのセル縦幅を、セル内のデータに合わせる方法わかりますか? (セル内のデータが全て見える状態にするって意味です)
補足
お早い回答ありがとうございます。 >>ついでに一つお聞きしたいのですが、VBからの操作で、Excelのセル縦幅を、セル内のデータに合わせる方法わかりますか? についてですが、自分も昨日VBで、[ ws.Cells(消したい行番号,1).EntireRow.AutoFit ]みたいな感じで試してみたのですが、ダブルクリックだと、幅が一行目に合うようになってしまいます。 調べていてわかったことなのですが、セルを結合させていると出来ないかもしれません。 結合させていないセルに、[ 折り返して全体を表示する ]にチェックを入れておくと、自動で全体表示してくれました。 しかし、今回は仕様上、セル結合で考えなければならないんですよね・・・。 --------【ソース】--------- Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open(App.Path & "\" & "test.xls") Set xlSheet = xlBook.Worksheets(1) ~省略~ xlSheet.Cells(17, 22).Value = "長い文" '入力データの幅にセルの幅を合わせる xlApp.Cells(17, 22).EntireRow.AutoFit -------------------------- もう一度調べてみます。 何かわかったら教えて下さい^^;