[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『[VBA]テキストボックスの文字表示を一定時間で変更したい』(3DLaBrock)
お世話になります。
ワークシート上にテキストボックスを置き、表示する文字列を一定時間で
変更しようとしているのですが、うまくいきません。
具体的には、下記の様にテキストボックスに最初の文字列を表示後、
Application.Waitで処理を一時停止し、そのあと次の文字列を表示しようと
しているのですが、
With Worksheets(1).Shapes("txtBox1")
.TextFrame.Characters.Text = "文字列1" Application.Wait [NOW()+"0:00:03"] .TextFrame.Characters.Text = "文字列2" End With
実行してみると最初は何も表示されず、
Application.Waitで指定した時間の経過後に最初の文字列と次の文字列が
連続して表示される様な動作になってしまいます。
文字列をテキストボックスではなくセルに表示した場合は、上記の目的通り
Application.Wait終了後に次の文字列を表示する動作をしてくれるのですが、
テキストボックスで同様の機能を実現するには、どうすれば良いでしょうか。
(DoEventsを挟んでみましたが、変化はありませんでした。)
< 使用 アプリ:、使用 OS:Windows10 >
>.TextFrame.Characters.Text = "文字列1" の次にDoEventsを二つ入れてみてくれ。 私の環境(Windiws10+Excel2010)ではそれでうまくいった。 (ねむねむ) 2018/05/24(木) 10:43
ねむねむ様
回答ありがとうございます。
DoEvents2回でうまくいきました。
(3DLaBrock) 2018/05/24(木) 10:50
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.