エクセルシート上の画像等をVBAで削除してもそのマクロが終了しないと消えない・・・

f:id:gyokusen_since:20201025153302p:plain
消したい画像はテキストボックスです!

ここで「■CSV変換」ボタンをクリックすると下記のようになって変換処理を実行する処理を書いた・・・

f:id:gyokusen_since:20201025152920p:plain
CSVレイアウト変換

書いたコードは

If Me.Shapes.Range(Array("B1")).Visible = msoTrue Then
Me.Shapes.Range(Array("B1")).Visible = msoFalse
End If

しかし消えるのはマクロの実行が終わってからなのである(T-T)
理由はわからない。ぐぐってみたがいい情報に巡り合えなかった・・・

そこで下記のように書き換えて所期の目的を達成することができた。

If Me.Shapes.Range(Array("B1")).Visible = msoTrue Then
Me.Shapes.Range(Array("B1")).Visible = msoFalse
MsgBox "「■変換フォーマット作成」の手順テキストボックスを消去します!"
Application.OnTime Now + TimeValue("00:00:01"), "■CSVレイアウト変換.CSV変換"
Exit Sub
End If