
アクセス初心者です。よろしくお願いします。
アクセスのフォームに表示したデータをエクセルのシートにコピーして名前を付けて保存させたいです。
テーブル等のエクスポートではありませんのでDoCmdでの保存ではなくSaveAsで保存したいです。
いろいろなサイトを見て新規ブックを開いて保存することはできましたが、既存ブックを開いて別名で保存しようとするとオブジェクト云々、オートメーション云々のエラーになります。
検索したサイトからの引用ですが、
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets(1)
xlSheet.SaveAs "c:\Temp.xls"
はできるのですが、
Set xlBook = xlApp.Workbooks.Open("C:\temp\原紙.xls")
Set xlSheet = xlBook.WorkSheets(1)
fname = "C:\temp\" & Format(Date, "yyyymmdd") & "売上一覧.xls"
xlBook.SaveAs Filename:=fname
だとエラーになります。
既に書式等を設定したブックを使いたいので後者のように既存のブックを使いたいのですが、どうしたらよろしいでしょうか。
職場に端末を持ち込めないため対応が遅くなりますがよろしくお願いします。
No.1ベストアンサー
- 回答日時:
昔の記憶を頼りに・・・。
1:新規ブックを開く。
2:ワークシートを全て削除
3:既存のブックを開く。
4:既存のブックのシートを新規ブックにコピー
5:新規ブックを保存
※その他の処理は省略。
おおざっぱですが、こんな感じで出来たように記憶しています。
参考までに・・・。
' 新規Sheetを開き、ワークシートを空にする。
Set nlBook = nlApp.Workbooks.Add
Dim i As Integer
For i = nlBook.Worksheets.Count To 1 Step -1
nlBook.Worksheets(i).Delete
Next i
' 元になるSheetを開く
Set olBook = olApp.Workbooks.Open("C:\temp\原紙.xls")
Set olSheet = olBook.WorkSheets(1)
' 元になるシートを新規にコピーする
olSheet.Copy After:=nlBook.Worksheets("Sheet1")
' 新規Sheetを保存する
fname = "C:\temp\" & Format(Date, "yyyymmdd") & "売上一覧.xls"
nlBook.SaveAs Filename:=fname
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
-
4
ACCESSのVBAにてExcelのシートをコピーしたい
その他(データベース)
-
5
Access-VBAでExcelファイルを作成する。
Excel(エクセル)
-
6
アクセスからエクセルのシートを追加して、名前をつける方法
Excel(エクセル)
-
7
ACCESSからexcelブックを開いて保存したい
Excel(エクセル)
-
8
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
9
accessでクエリをExcelにエクスポートする時にファイル名に日付を追加したい
Access(アクセス)
-
10
ACCESSVBA からExcelの他ブックへコピーの方法
Visual Basic(VBA)
-
11
Accessのスプレッドシートエクスポートで、シートが追加されてしまう
Access(アクセス)
-
12
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
13
ACCESS側からEXCELの書式を設定するには?
Visual Basic(VBA)
-
14
Access VBAからExcelシートの削除
Excel(エクセル)
-
15
Accessのクエリの結果を、既存のエクセルに追加したい
Access(アクセス)
-
16
accessデータを指定したExcel、そして指定したセルへエクスポートするaccess VBAコー
Access(アクセス)
-
17
Access サブフォームでの選択行の取得
その他(データベース)
-
18
Access 同じデータをたくさんのレコード(同一列)に一度に入力するには
Access(アクセス)
-
19
yes/no型のチェックができない(アクセス2003)
Access(アクセス)
-
20
アクセスクエリ(複数)→マクロ→エクセル出力(ワークシート別)
その他(パソコン・スマホ・電化製品)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでブックを非表示で開いて処...
-
エクセルを共有するとPCによっ...
-
エクセルの関数 ENTERを押...
-
Excelファイルをダブルクリック...
-
エクセル2016です。「ブッ...
-
【マクロ】【画像あり】ファイ...
-
WorkBooksをオープンさせずにシ...
-
エクセルで参照しているデータ...
-
Excel(2010)のフィルターが保...
-
【マクロ】【画像あり】❶ブック...
-
フォルダ内の複数ファイルから...
-
ブックのピボットを別ブックに...
-
【マクロ】【VBA】同じフォルダ...
-
同じフォルダへのハイパーリン...
-
複数シートを別ファイルで保存...
-
エクセルを開くと最大化などの...
-
Excelでブックの共有を掛けると...
-
エクセルでウィンドウの枠固定...
-
エクセルの複数シートをCSV...
-
フォルダ内の複数ファイルから...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでブックを非表示で開いて処...
-
エクセルを共有するとPCによっ...
-
エクセルの関数 ENTERを押...
-
【マクロ】【画像あり】❶ブック...
-
【マクロ】【画像あり】ファイ...
-
Excelファイルをダブルクリック...
-
WorkBooksをオープンさせずにシ...
-
エクセルで参照しているデータ...
-
Excelで複数ブックの同一セルに...
-
Excelでブックの共有を掛けると...
-
フォルダ内の複数ファイルから...
-
Excel(2010)のフィルターが保...
-
エクセルでウィンドウの枠固定...
-
同じフォルダへのハイパーリン...
-
Excelの警告について
-
エクセルを開くと最大化などの...
-
エクセルにおける,「ブック」...
-
参照したいブックのパス名に"["
-
エクセルファイルをオープンし...
-
Excelで指定範囲のデータ...
おすすめ情報