Excel VBA質問箱 IV

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

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


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

【47481】アップデートの方法 March 07/3/12(月) 9:34 質問[未読]
【47482】Re:アップデートの方法 たいやきの頭 07/3/12(月) 10:17 回答[未読]
【47487】Re:アップデートの方法 March 07/3/12(月) 11:52 発言[未読]
【47489】Re:アップデートの方法 たいやきの頭 07/3/12(月) 12:14 発言[未読]
【47490】Re:アップデートの方法 たいやきの頭 07/3/12(月) 12:33 発言[未読]
【47493】Re:アップデートの方法 March 07/3/12(月) 14:08 お礼[未読]

【47481】アップデートの方法
質問  March  - 07/3/12(月) 9:34 -

引用なし
パスワード
     A1   B1    C1
1 △   3    1
2 ◎   0    5
3 ☆   0    0
・ ・   ・   ・
・ ・   ・   ・
・ ・   ・   ・
・ ・   ・   ・

ユーザーフォームのコマンドボタンを押すと、Aの列に、
BとCともに入っている数字が0の場合は"☆" Bに0、Cには0以外の数にの場合は"◎" B、Cともに0以外の数字が入っている場合は"△"・・・
といった具合に表示させたいのですが、なにかいい方法はありますか??
B列とC列には常になにか数字が入っている状態です。コマンドボタンをおすと
B列とC列の情報が変わっていればそのたび情報がアップデートされるようにして
おきたいです。
わかりづらい説明で申し訳ありませんが、お知恵をかしてください。

【47482】Re:アップデートの方法
回答  たいやきの頭  - 07/3/12(月) 10:17 -

引用なし
パスワード
   Application.EnableEvents = False
Cnt = Range("b1").CurrentRegion.Rows.Count
For i = 1 To Cnt
  If Cells(i, 2) = "0" And Not Cells(i, 3) = "0" Then
    Cells(i, 1) = "◎"
  ElseIf Not Cells(i, 2) = "0" And Not Cells(i, 2) = "0" Then
    Cells(i, 1) = "△"
  ElseIf Cells(i, 2) = "0" And Cells(i, 3) = "0" Then
    Cells(i, 1) = "☆"
  End If
Next i
Application.EnableEvents = True
というものをコマンドボタンモジュールとThisWorkBookモジュールの
SheetChangeイベントにコピペするとできると思います。
まちがってたらごめんなさい。

【47487】Re:アップデートの方法
発言  March  - 07/3/12(月) 11:52 -

引用なし
パスワード
   たいやきの頭 さん
回答ありがとうございました!
まことに申し訳ないのですが、中身の解説いただいてよろしいでしょうか?

すみません。初心者でお手数をおかけします。

【47489】Re:アップデートの方法
発言  たいやきの頭  - 07/3/12(月) 12:14 -

引用なし
パスワード
   Application.EnableEvents = False ’イベントを発生させなくする
Cnt = Range("b1").CurrentRegion.Rows.Count ’B列のデータが入力されている行数を数える
For i = 1 To Cnt ’iに1ずつ足してCntになるまで繰り返す
  If Cells(i, 2) = "0" And Not Cells(i, 3) = "0" Then ’i行のB列が0で、i行のC列が0以外のものはi行のA列に◎を入力
    Cells(i, 1) = "◎"
  ElseIf Not Cells(i, 2) = "0" And Not Cells(i, 2) = "0" Then ’i行のB列もC列も0以外のものはi行のA列に◎を入力
    Cells(i, 1) = "△"
  ElseIf Cells(i, 2) = "0" And Cells(i, 3) = "0" Then ’i行のB列もC列も0の場合は☆を入力
    Cells(i, 1) = "☆"
  End If
Next i
Application.EnableEvents = True ’設定を戻す

【47490】Re:アップデートの方法
発言  たいやきの頭  - 07/3/12(月) 12:33 -

引用なし
パスワード
   かなりわかりにくくなちゃったんですけど、わかりますか?

//taiyaki-atama.blog.drecom.jp/
ここ僕のブログなんですけど、よかったら見に来てください。
はじめたばっかです)

【47493】Re:アップデートの方法
お礼  March  - 07/3/12(月) 14:08 -

引用なし
パスワード
   ▼たいやきの頭 さん
もう完璧です!ありがとうございました。
ブログのほうにもお邪魔させていただきます☆

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