Access (VBA)

Access VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(指定なし : 指定なし)
インストール可能な ISAM ドライバが見つかりませんでした と表示される
投稿日時: 18/08/06 14:20:22
投稿者: けん太

下記ロジックで、テーブルをエクセルに出力させるようにしていますが、
件名のエラーメッセージが表示されます。
 
ファイルパスは存在していて、アクセスも可能です。
エラー原因はどこにあるのでしょうか?
 
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel10, "AAAテーブル", Filepass & "AAA.xls", True, "AAAデータ"

投稿日時: 18/08/06 14:31:10
投稿者: けん太

ちなみに、ファイルパスは、下記で取得しています。
 
 
dim Filepass as string
     
    With Application.FileDialog(msoFileDialogFolderPicker)
 
        .InitialFileName = ""
        .Title = "対象フォルダを選択"
        .AllowMultiSelect = False
        If .Show = True Then
          Filepass = .SelectedItems(1)
 
        End If
 
         
    End With

回答
投稿日時: 18/08/06 15:03:54
投稿者: Suzu

1.Access のバージョンは何でしょう?
 
2. acSpreadsheetTypeExcel10 と言う値は無さそうですが・・
【AcSpreadSheetType 列挙 (Access)】
https://msdn.microsoft.com/ja-jp/vba/access-vba/articles/acspreadsheettype-enumeration-access
 
3.出力先のパス 問題がありますよね?
  ユーザーに選択させたフォルダ《BBB》に保存したいのですよね?
 
  いまあなたのコード選択したフォルダの上の階層のフォルダに、
  BBBAAA.xls というファイル名にて保存しようとしています。
   (xls ? xlsx でなく?)

回答
投稿日時: 18/08/06 15:06:33
投稿者: sk

引用:
インストール可能な ISAM ドライバが見つかりませんでした

引用:
With Application.FileDialog(msoFileDialogFolderPicker)

引用:
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel10, "AAAテーブル", Filepass & "AAA.xls", True, "AAAデータ"

DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "AAAテーブル", Filepass & "\AAA.xls", True, "AAAデータ"
 
引用:
エラー原因はどこにあるのでしょうか?

・acSpreadsheetTypeExcel10 という名前の定数は
  Access には存在しない。
 
  MSDN より:
  https://msdn.microsoft.com/ja-jp/vba/access-vba/articles/acspreadsheettype-enumeration-access
 
・モジュールレベルの先頭に Option Explicit ステートメントが
 記述されておらず、かつ acSpreadsheetTypeExcel10 という名前の
 変数/定数がどこにも宣言していないのであれば、ここでの
 acSpreadsheetTypeExcel10 は暗黙的に宣言された変数として扱われ、
 そのデータ型は Variant 型であり、その初期値は Empty 値である。
 
・TransferSpreadsheet メソッドの第 2 引数 SpreadsheetType に
 Empty 値を渡せば当然エラーとなる。

投稿日時: 18/08/06 15:11:26
投稿者: けん太

Suzuさん
skさん
 
ありがとうございます。
色々やっていて、acSpreadsheetTypeExcel12 と ”¥”追加で出力出来ました。
 
EXCELを開くときにメッセージが出力されるので、
skさんの言われるacSpreadsheetTypeExcel9 で確認してみます。