Excel VBA質問箱 IV

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

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


5682 / 13645 ツリー ←次へ | 前へ→

【49456】制御構造 If Then Elseの条件分岐 りん 07/6/5(火) 17:27 質問[未読]
【49457】Re:制御構造 If Then Elseの条件分岐 neptune 07/6/5(火) 17:55 発言[未読]
【49462】Re:制御構造 If Then Elseの条件分岐 Kein 07/6/5(火) 18:46 回答[未読]
【49485】Re:制御構造 If Then Elseの条件分岐 りん 07/6/6(水) 11:37 質問[未読]
【49488】Re:制御構造 If Then Elseの条件分岐 Jaka 07/6/6(水) 12:07 発言[未読]
【49489】Re:制御構造 If Then Elseの条件分岐 りん 07/6/6(水) 13:09 質問[未読]
【49491】Re:制御構造 If Then Elseの条件分岐 Jaka 07/6/6(水) 14:08 発言[未読]
【49493】Re:制御構造 If Then Elseの条件分岐 Kein 07/6/6(水) 17:23 回答[未読]
【49502】Re:制御構造 If Then Elseの条件分岐 りん 07/6/7(木) 12:31 お礼[未読]

【49456】制御構造 If Then Elseの条件分岐
質問  りん  - 07/6/5(火) 17:27 -

引用なし
パスワード
   初心者ながら、いろいろと検索しましたが、解決しませんでした。
ぜひご教授ください。

H列に「特価」という文字が入っていたら、その行のフォントカラーを赤に、
背景を黄色にする記述を教えてください。

こんな簡単なこともわからないの?とお叱りを受けそうですが、
どうぞ宜しくお願い致します。

【49457】Re:制御構造 If Then Elseの条件分岐
発言  neptune  - 07/6/5(火) 17:55 -

引用なし
パスワード
   ▼りん さん:
こんにちは

>初心者ながら、いろいろと検索しましたが、解決しませんでした。
どこをどう検索したのでしょうか?

>H列に「特価」という文字が入っていたら、その行のフォントカラーを赤に、
>背景を黄色にする記述を教えてください。
>
>こんな簡単なこともわからないの?とお叱りを受けそうですが、
>どうぞ宜しくお願い致します。

どこまでわかってどこからわからないのでしょう?
きつい言い方ですが、
わからないのは誰しもあることです。
ですが、全くわからないのならあきらめましょう。全く自分で努力してない
ということですから。

ちなみに私もHelpの助けなしでは、ご希望の文はかけません。

【49462】Re:制御構造 If Then Elseの条件分岐
回答  Kein  - 07/6/5(火) 18:46 -

引用なし
パスワード
   いつものように、数式で判定して処理するコードなら・・

With Range("H:H")
  .Interior.ColorIndex = xlColorIndexNone
  .Font.ColorIndex = xlColorIndexAutoMatic
End With
On Error Resume Next
With Range("H1", Range("H65536").End(xlUp)).Offset(, 248)
  .Formula = "=IF($H1=""特価"",1)"
  With SpecialCells(3, 1).Offset(, -248)
   .Interior.ColorIndex = 6
   .Font.ColorIndex = 3
  End With
  .ClearContents
End With

【49485】Re:制御構造 If Then Elseの条件分岐
質問  りん  - 07/6/6(水) 11:37 -

引用なし
パスワード
   ご丁寧にありがとうございます。

Sub 形態() 〜end sub内に記述し、実行しましたところ、
「コンパイルエラー subまたはfunctionが定義されていません」
というメッセージが出ます。

ヘルプを見たり、手元にある参考書を見てみたりしましたが
原因がわかりません。

何度もすみませんが、ご教授いただきますようお願いいたします。


▼Kein さん:
>いつものように、数式で判定して処理するコードなら・・
>
>With Range("H:H")
>  .Interior.ColorIndex = xlColorIndexNone
>  .Font.ColorIndex = xlColorIndexAutoMatic
>End With
>On Error Resume Next
>With Range("H1", Range("H65536").End(xlUp)).Offset(, 248)
>  .Formula = "=IF($H1=""特価"",1)"
>  With SpecialCells(3, 1).Offset(, -248)
>   .Interior.ColorIndex = 6
>   .Font.ColorIndex = 3
>  End With
>  .ClearContents
>End With

【49488】Re:制御構造 If Then Elseの条件分岐
発言  Jaka  - 07/6/6(水) 12:07 -

引用なし
パスワード
   >>With Range("H1", Range("H65536").End(xlUp)).Offset(, 248)
>>  .Formula = "=IF($H1=""特価"",1)"
>>  With SpecialCells(3, 1).Offset(, -248)
       ↓
   With .SpecialCells(3, 1).Offset(, -248)

忘れてしまったようです。

赤の点が良く見えなかったので、太字にしました。

【49489】Re:制御構造 If Then Elseの条件分岐
質問  りん  - 07/6/6(水) 13:09 -

引用なし
パスワード
   早々に対応いただきましてありがとうございます。
ご丁寧に教えていただいているので、本当に助かっています。

条件一致のセルは、背景とフォントカラーが変わるようになりました。
希望としましては、条件一致した「セルの行全体」に対して、背景とフォントカラーが変わるようにしたいのです。

初めて見るコードなので、どこに手をつければ良いのか見当が付きません。

大変恐縮なのですが、再度ご教授いただければと思います。

それでは、宜しくお願い致します。

【49491】Re:制御構造 If Then Elseの条件分岐
発言  Jaka  - 07/6/6(水) 14:08 -

引用なし
パスワード
   行全体だったら、
.SpecialCells(3, 1).Offset(, -248).EntireRow

わざわざ元のセルに戻る必要もなくなるので
.SpecialCells(3, 1).EntireRow

【49493】Re:制御構造 If Then Elseの条件分岐
回答  Kein  - 07/6/6(水) 17:23 -

引用なし
パスワード
   すいません、ドットを書き漏らしてましたね。
Jakaさん、フォローを有難うございます。で、全体を見直すと・・

With Cells
  .Interior.ColorIndex = xlColorIndexNone
  .Font.ColorIndex = xlColorIndexAutoMatic
End With
On Error Resume Next
With Range("H1", Range("H65536").End(xlUp)).Offset(, 248)
  .Formula = "=IF($H1=""特価"",1)"
  With .SpecialCells(3, 1).EntireRow
   .Interior.ColorIndex = 6
   .Font.ColorIndex = 3
  End With
  .ClearContents
End With

というコードでよいと思います。

【49502】Re:制御構造 If Then Elseの条件分岐
お礼  りん  - 07/6/7(木) 12:31 -

引用なし
パスワード
   Keinさん、 Jakaさん、本当にありがとうございました。

動作確認できました。
勉強不足を痛感しました。
もっともっと努力して、お手伝いできる側になれるよう頑張りたいと思います。
またお世話になることがあるかもしれませんが、その際はぜひ宜しくお願いいたします。

有志ある方々に、尊敬の念と感謝の意を表します。
それでは、失礼致します。


▼Kein さん:
>すいません、ドットを書き漏らしてましたね。
>Jakaさん、フォローを有難うございます。で、全体を見直すと・・
>
>With Cells
>  .Interior.ColorIndex = xlColorIndexNone
>  .Font.ColorIndex = xlColorIndexAutoMatic
>End With
>On Error Resume Next
>With Range("H1", Range("H65536").End(xlUp)).Offset(, 248)
>  .Formula = "=IF($H1=""特価"",1)"
>  With .SpecialCells(3, 1).EntireRow
>   .Interior.ColorIndex = 6
>   .Font.ColorIndex = 3
>  End With
>  .ClearContents
>End With
>
>というコードでよいと思います。

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