
マクロ実行時に
実行エラー 1004 「Range クラスのselectメソッドが失敗しました。」 のメッセージが出てしまいます。
マクロは以下のとおりです。
-----------------------------------------------------------------------------------
Sub 振替表作成()
Workbooks.Add
Application.SheetsInNewWorkbook = 1
ActiveSheet.Name = "未収"
MsgBox ("未収・前受振替表エクセルファイルを作成します。" & "任意の場所を指定して保存してください。 ")
With Application.FileDialog(msoFileDialogSaveAs)
.InitialFileName = "未収・前受振替表"
If .Show = -1 Then .Execute
End With
MsgBox ("対象月次の1370集計表 を選択してください。")
With Application.FileDialog(msoFileDialogOpen)
.InitialFileName = ""
.AllowMultiSelect = True
If .Show = -1 Then .Execute
End With
Columns("A:D").Select
Selection.Delete Shift:=xlToLeft
----------------------------------------------------------------------------
Columns("A:D").Select の部分でエラーになります。
Columns("A:D").Select の前に ActiveWindow.Select を入れてみたんですが駄目です。
Columns("A:D").Select の前に Selection.Select を入れてみたんですが駄目です。
Columns("A:D").Select の前に Worksheets("シート名").Activate を入れてみたんですが駄目です。
原因と解消方法がわかりません。
何がいけないんでしょうか?
No.1ベストアンサー
- 回答日時:
Worksheets("シート名").Activate
Columns("A:D").Select
このように書くと、1行目のシートがActiveになるのですが
2行目が指定しているのは元のシートのcolumnsになり、エラーになります。
シートをactiveにした上で
Worksheets("シート名").Activate
シートまで指定して
Worksheets("シート名").Columns("A:D").Select
と書けば望みの通りの動作になります。
この回答への補足
Worksheets("シート名").Activate
Worksheets("シート名").Columns("A:D").Select
やってみましたが、同じエラーが出ます。
不思議ことに、デバックをクリックしてコードを表示させると
Worksheets("シート名").Activate
Worksheets("シート名").Columns("A:D").Select
が消えていて、
Columns("A:D").Select
に戻った状態で、黄色マーカーになっています。
エクセルに戻って、マクロの編集からコードを開くと
Worksheets("シート名").Activate
Worksheets("シート名").Columns("A:D").Select
の記載がキチンと出ます。
このような現象は始めてで、原因がさっぱりわかりません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) マクロで最終行を取得してコピーしたい 3 2022/04/06 19:07
- Excel(エクセル) エクセルのVBAにショートカットキーの割り当て 3 2022/07/13 14:19
- Visual Basic(VBA) エクセルのマクロで 1 2022/04/09 06:44
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
- Excel(エクセル) ExcelVBAについて。 2 2022/12/10 20:08
- Visual Basic(VBA) ExcelVBA No.を自動連番で設定をしながらデータ入力をしたい 2 2022/08/03 18:19
- Visual Basic(VBA) 指定の条件に応じたセルの場所に〇印(図形)を描く 2 2022/11/08 15:26
- Visual Basic(VBA) エクセルVBA 3 2022/06/23 20:00
- Visual Basic(VBA) データのある範囲を選択するVBAについて 2 2022/09/03 00:20
- Excel(エクセル) excelVBAについて。 8 2022/12/11 13:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルシートの見出しの文字...
-
EXCELで複数のシートを一度に「...
-
ハイパーリンクでジャンプした...
-
エクセルでブック内の倍率がバ...
-
ワークシートそのものの色を変...
-
特定のシートのみ再計算させな...
-
EXCELで存在しないシート...
-
【ExcelVBA】マクロの入ったシ...
-
エクセルで複数のシートに画像...
-
エクセルのシー名を二段表示に...
-
エクセル、特定のシートにパス...
-
DATE関数 4月31日などのあ...
-
エクセルで、シートの名前を変...
-
Wordで差し込み印刷時に表示す...
-
エクセルを開くとメニューバー...
-
エクセルで誤ってF11キーを押す...
-
Access VBAよりExcelのシート名...
-
エクセル 非表示のシートをハ...
-
vba Listviewでのチェックボッ...
-
Excelで条件に一致したものだけ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで複数のシートを一度に「...
-
エクセルでブック内の倍率がバ...
-
【ExcelVBA】マクロの入ったシ...
-
ハイパーリンクでジャンプした...
-
特定のシートのみ再計算させな...
-
EXCELの図形(テキストボックス)...
-
エクセルで複数のシートに画像...
-
エクセルのファイルサイズが急...
-
エクセル、特定のシートにパス...
-
Accessのテーブルを既存のExcel...
-
エクセルのシー名を二段表示に...
-
エクセルの2つのシートを並び...
-
EXCELで存在しないシート...
-
エクセルの複数シートでのリン...
-
エクセルで、シートの名前を変...
-
EXCELの「シートの見出し」のフ...
-
Wordで差し込み印刷時に表示す...
-
ワークシートそのものの色を変...
-
エクセルを開くとメニューバー...
-
エクセル、別のシートの表をポ...
おすすめ情報