お世話になります。
Access2010
Excel2010
Windows7 Pro
シートの取得名につきましては以下で取得することができました。
※あるWebページに記載があったものをコピペしました。なので、以下のVBAの内容は
理解できておりません。
Dim Db As DAO.Database
Dim Tbl As DAO.TableDef
Dim xlsFile As String
xlsFile = "ファイルパス"
Set Db = OpenDatabase(xlsFile, True, True, "Excel 12.0;") (注)
For Each Tbl In Db.TableDefs
If Right$(Tbl.Name, 1) = "$" Or _
Right$(Tbl.Name, 2) = "$'" Then
'シート名の最後は必ず$が付きます
Debug.Print Tbl.Name
End If
Next Tbl
Db.Close
Set Db = Nothing
<質問1>
(注)の箇所のExcelバージョンについてですが、ここに指定するバージョンは
インストールされているExcelのバージョン(Excel2010=14?)ではなく、
ファイルパスで指定されているExcelファイルのバージョン・・・という認識で
よろしいでしょうか。
<質問2>
上記がExcelファイルのバージョンの場合、どうやってそのファイルのバージョンを
確認することができるのでしょうか。
Excelのヘルプには、Excel自体のバージョン(14)が表示されます。
またファイルのプロパティ「詳細」のバージョン番号の箇所は空白になってます。
<質問3>
当該AccessはユーザーにてRuntime環境で利用する予定です。
よって、ユーザーによって(PCによって)Excelのバージョンはまちまちです。
基本的に2007より以前のバージョンを使うことはないと思うのですが、
このような場合、一般的にバージョンの指定はどのようにするものなのでしょうか。
※2007以降のバージョン(.xlsx)であれば、とりあえず12を指定していれば間違いないとか?
<質問4>
勉強不足で大変申し訳ございませんが、上記VBAのそれぞれの行で
何をやっているのか噛み砕いてご教授頂けると幸いです。
以上、宜しくお願い致します。