対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016
「エクセル マクロ texttocolumns 上書き」
という検索キーワードでアクセスがありました。
Range.TextToColumnsメソッドを使ったサンプルマクロ
RangeオブジェクトのTextToColumnsメソッドを使うと
[区切り位置]機能をVBAから利用できます。
[スポンサードリンク]
例えば、以下のSubプロシージャを、
Sub TextToColumnsメソッドのサンプル()
ActiveCell.TextToColumns _
Destination:=ActiveCell.Offset(0, 1), _
DataType:=xlDelimited, _
Comma:=True
End Sub
ActiveCell.TextToColumns _
Destination:=ActiveCell.Offset(0, 1), _
DataType:=xlDelimited, _
Comma:=True
End Sub
「松, 竹, 梅」
というデータの入力されているセルがアクティブな状態で実行すると、
右方向のセルに
「松」「竹」「梅」
と1文字ずつに分解することができます。
このときに、分解先のセルに、何らかの文字列が入っているときには、
「既にデータがありますが、置き換えますか?」
という確認メッセージが表示されます。
この確認メッセージを表示させない方法を、
「エクセル マクロ texttocolumns 上書き」
と検索なさった方は探していらしたのではないかと想像しています。
TextToColumnsメソッドで上書き確認を非表示に
以下のようなSubプロシージャにすれば、上書きの確認メッセージを非表示にできます。
Sub TextToColumnsメソッドのサンプル_上書き確認非表示()
Application.DisplayAlerts = False
ActiveCell.TextToColumns _
Destination:=ActiveCell.Offset(0, 1), _
DataType:=xlDelimited, _
Comma:=True
Application.DisplayAlerts = True
End Sub
Application.DisplayAlerts = False
ActiveCell.TextToColumns _
Destination:=ActiveCell.Offset(0, 1), _
DataType:=xlDelimited, _
Comma:=True
Application.DisplayAlerts = True
End Sub
シート削除の確認メッセージを非表示にすることでよく知られている、Application.DisplayAlertsプロパティをFalseに設定しておけばOKということです。
[スポンサードリンク]
Home » Excel VBA Rangeオブジェクト » TextToColumnsメソッドで上書き確認を非表示に