[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『点滅』(K)
Sub 文字点滅() Dim selR As Range Dim selId() As Integer Dim selNum As Integer Dim i As Integer, colorId(1) As Integer Dim counter As Integer, setTime, flash Set selR = Selection '点滅させるセル範囲 selNum = selR.Count colorId(0) = 3 '点滅色 colorId(1) = 2 ' 〃 ReDim selId(1 To selR.Count) For i = 1 To selR.Count selId(i) = selR(i).Font.ColorIndex Next i For counter = 1 To 5 For Each flash In colorId selR.Font.ColorIndex = flash setTime = Timer Do DoEvents Loop Until Timer >= setTime + 0.3 Next flash Next counter For i = 1 To selR.Count selR(i).Font.ColorIndex = selId(i) Next i End Sub
文字を点滅させたくてこのコードを使っていますが、人に教えてもらったものなので意味がよく理解できません。
例えば、D10、E20、E45の文字を点滅させるには、どこをどのように変えたらいいですか?
それと、シートを開いている間ずっと点滅させる方法もお願いします。
範囲については、 Set selR = Range("D10, E20, E45") '点滅させるセル範囲
(川野鮎太郎)
点滅について、
実行していただくとお分かりになると思いますが、 シート選択中にずっと点滅させる = その間ずっとマクロ作動中 になるのでPCの負荷が過大となり、 エクセル自体も操作しづらくなります。 ずっと点滅はお勧めしません。X秒間等、適度なところで終わらすべきだと思いますよ!
別シートに切り替えるとマクロが終了します。
Sub 文字点滅() Dim selR As Range Dim selId() As Integer Dim selNum As Integer Dim i As Integer, colorId(1) As Integer Dim counter As Integer, setTime, flash Dim MySht As String '追加 Set selR = Range("D10, E20, E45") '点滅させるセル範囲 selNum = selR.Count colorId(0) = 3 '点滅色 colorId(1) = 2 ' 〃 MySht = ActiveSheet.Name '追加 ReDim selId(1 To selR.Count) For i = 1 To selR.Count selId(i) = selR(i).Font.ColorIndex Next i While MySht = ActiveSheet.Name '変更 For Each flash In colorId selR.Font.ColorIndex = flash setTime = Timer Do DoEvents Loop Until Timer >= setTime + 0.3 Next flash Wend '変更 For i = 1 To selR.Count selR(i).Font.ColorIndex = selId(i) Next i End Sub
(tomo)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.