Excel VBA質問箱 IV

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

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


4603 / 13644 ツリー ←次へ | 前へ→

【55676】コンボボックス強調表示について ムラ 08/5/15(木) 14:54 質問[未読]
【55677】Re:コンボボックス強調表示について kanabun 08/5/15(木) 15:37 発言[未読]
【55692】Re:コンボボックス強調表示について bykin 08/5/15(木) 22:32 発言[未読]

【55676】コンボボックス強調表示について
質問  ムラ  - 08/5/15(木) 14:54 -

引用なし
パスワード
   コンボボックス選択後の強調表示を回避したいのですが

過去レスの

Private Sub ComboBox1_Change()
Me.ComboBox1.SetFocus
Application.SendKeys ("{RIGHT}")
End Sub

を参考にコンボボックスの強調表示を回避しようと思ったのですが

ComboBox1にSetFocusというプロパティが存在しません。

この方法でもいいのですが、

他に方法があったら どなたか御教授お願い致します

【55677】Re:コンボボックス強調表示について
発言  kanabun  - 08/5/15(木) 15:37 -

引用なし
パスワード
   ▼ムラ さん:
>ComboBox1にSetFocusというプロパティが存在しません。

SetFocus というメソッドですね。

でも、Focus はComboBox1 にあるのだから、SetFocus 不要では?

 Application.SendKeys "{RIGHT}"

だけで行けませんか?

【55692】Re:コンボボックス強調表示について
発言  bykin  - 08/5/15(木) 22:32 -

引用なし
パスワード
   こんばんわ。

>ComboBox1にSetFocusというプロパティが存在しません。

ま、プロパティはメソッドの間違いなんやけど、これはコンボボックスが
ワークシート上に配置されてるってことなんかな?
ユーザーフォーム上やったらSetFocusは使えるんやけど、ワークシートでは
あかんみたいやね。

・・・で、

>Application.SendKeys ("{RIGHT}")

を使いたいってことは、このコンボボックスのStyleプロパティは
fmStyleDropDownCombo(候補以外に直接入力可能)になってるってことかな?

その場合に直接入力で値を変更・・・例えば文字列の途中に挿入なんかすると
Application.SendKeys ("{RIGHT}")
なんかやってると、カーソルの位置が変になって(1個右へずれてまう)
入力できたもんやおまへんよ。
直接入力可能のままにしたいんやったら、反転表示はしゃーないんやないかな?
いろいろ試してみたけど判定がごっつうややこしそーやし・・・
面倒やなかったら、もっといろいろ試せば出来るかもやけど。

fmStyleDropDownListに設定して、候補からのみ選択可能にするんやったら、

Private Sub ComboBox1_Change()
  ActiveWindow.RangeSelection.Select
End Sub

なんてのでいけると思います。
但し、先に複数セルを選択しているとアクティブセルが変更される場合があります。

ま、わてやったらワークシートで使うんやったら「フォーム」ツールバーの
コンボボックスにしまっけど・・・

ほな。

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