- 締切済み
vbaマクロ 実行時エラー '91'について教えてください
下記のマクロで、ファイル指定保存をする時に "実行時エラー91 オブジェクト変数またはWithブロック変数が設定されていません”がでます。 やりたいのは、選択したセルの1番目をファイル名として 保存をしたいのですが、うまくいきません。 どうしたらよいのでしょうか? Sub Macro1() Dim セル As Object Dim i As Long i = 1 For Each セル In Selection Worksheets("Sheet2").Cells(1, i).Value = セル i = i + 1 Next ActiveWorkbook.SaveAs Filename:="D:\TEST\" & セル & ".xls" End Sub
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- hige_082
- ベストアンサー率50% (379/747)
これで如何? Sub test() Worksheets("Sheet2").Range("a1").Value = Selection.Cells(1, 1).Value & ".xls" ActiveWorkbook.SaveAs Filename:="D:\TEST\" & Selection.Cells(1, 1).Value & ".xls" End Sub 参考まで
- DreamyCat
- ベストアンサー率56% (295/524)
すでに回答が出ていますが、 選択範囲中のどこかのセルに文字列があれば すべて別ファイル名として保存するということなら こんな感じでしょうか。 Sub Macro1() Dim セル As Range Dim i As Long 'i = 1 For Each セル In Selection If セル.Text = "" Then Exit For Worksheets("Sheet2").Cells(1, i).Value = セル.Text ActiveWorkbook.SaveAs Filename:="D:\TEST\" & セル.Text & ".xls" 'i = i + 1 Next End Sub
- n-jun
- ベストアンサー率33% (959/2873)
変数iがなぜあるのかはわかりませんが、 ActiveWorkbook.SaveAs Filename:="D:\TEST\" & Selection.Item(1).Value & ".xls" この1行で良いかも? ⇒エラー処理が不要なら。
お礼
ご回答ありがとうございます。 エラーは回避することができましたが、セルのファイル名が保存されません。 セルの宣言がおかしいのでしょうか?