Excel VBA質問箱 IV

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

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


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

【17782】Excel97 VBAコードの記述場所 kazu88 04/9/7(火) 17:47 質問[未読]
【17785】Re:Excel97 VBAコードの記述場所 ichinose 04/9/7(火) 18:07 発言[未読]
【17786】Re:Excel97 VBAコードの記述場所 Kein 04/9/7(火) 18:17 回答[未読]
【17787】Re:Excel97 VBAコードの記述場所 kazu88 04/9/7(火) 18:25 お礼[未読]

【17782】Excel97 VBAコードの記述場所
質問  kazu88  - 04/9/7(火) 17:47 -

引用なし
パスワード
   OS:WinNT4.0 SP6
Excel:97

お世話になります。

Excel97にて、あるセルに特定の値を入力すると、そのセル行の
背景色が変わる、という動作をするシートがあります。

このシートを含むファイルのVBAのエディタを起動すると、
ThisWorkbookオブジェクト、存在するシート(とはいっても
1シートだけですが)オブジェクトがExplorer上に見えています。
(ユーザーフォーム、標準モジュール、クラスモジュールはありません)

さて、経験上シートオブジェクトのイベントにコーディングされて
いるな、と思いソースを開いてみたのですが、コードは1行も記述
されておらず、ThisWorkbookにもなにも書かれていませんでした。

う〜ん、どこに書かれているのか、はたまたVBA以外でセルの背景色
を切替える裏技があるのか、皆目検討がつかず、何かヒントが頂け
ないかと思っています。

よろしくお願い致します。

【17785】Re:Excel97 VBAコードの記述場所
発言  ichinose  - 04/9/7(火) 18:07 -

引用なし
パスワード
   ▼kazu88 さん:
こんばんは。

>OS:WinNT4.0 SP6
>Excel:97
>
>お世話になります。
>
>Excel97にて、あるセルに特定の値を入力すると、そのセル行の
>背景色が変わる、という動作をするシートがあります。
>
>このシートを含むファイルのVBAのエディタを起動すると、
>ThisWorkbookオブジェクト、存在するシート(とはいっても
>1シートだけですが)オブジェクトがExplorer上に見えています。
>(ユーザーフォーム、標準モジュール、クラスモジュールはありません)
>
>さて、経験上シートオブジェクトのイベントにコーディングされて
>いるな、と思いソースを開いてみたのですが、コードは1行も記述
>されておらず、ThisWorkbookにもなにも書かれていませんでした。
>
>う〜ん、どこに書かれているのか、はたまたVBA以外でセルの背景色
>を切替える裏技があるのか、皆目検討がつかず、何かヒントが頂け
>ないかと思っています。
>
>よろしくお願い致します。
マクロではなく、条件付書式を使用しているのではありませんか?

該当セルを選択してから、「書式」---「条件付書式」とクリックしてみてください。
何か条件式が表示されませんか?

【17786】Re:Excel97 VBAコードの記述場所
回答  Kein  - 04/9/7(火) 18:17 -

引用なし
パスワード
   Excel95 以前のVBAでは、いまどきのExcelの標準モジュールに相当する Moduleシート
のみしか使えませんでした。そこでセル入力イベントマクロを書く場合、OnEntly
プロパティを使うコードになります。例えば Sheet1 に、入力イベントを設定すると
すれば

Sub Auto_Open()
  Worksheets("Sheet1").OnEntry = "MyEnt"
End Sub

Sub MyEnt()
  With ActiveCell
   If .Address <> "$D$5" Then Exit Sub
   .EntireRow.Interior.ColorIndex = 3
  End If
End Sub

Sub Auto_Close()
  Worksheets("Sheet1").OnEntry = ""
End Sub

というようなマクロで、D5 に値を入力→5行目に赤色を着ける、が可能になります。
もし標準モジュールに以上のようなマクロが無ければ、あとは入力規則の設定かも
知れません。「あるセル」を含む周囲のセルを複数選択して、メニューの「編集・
ジャンプ・セル選択」で "データの入力規則" を選択してみれば、分かると思います。

【17787】Re:Excel97 VBAコードの記述場所
お礼  kazu88  - 04/9/7(火) 18:25 -

引用なし
パスワード
   ichinoseさん、keinさん、早速のレスありがとうございます。

「条件付書式の設定」がビンゴでした。

ご教唆頂きまして本当に助かりました。多謝多謝!

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