最新トピック
8
2 ヶ月前
Hatena様にご質問 2 ヶ月前
1
4 ヶ月前
排他制御 4 ヶ月前
6
7 ヶ月前
モジュールでカレントフォームのコントロールを使うには 7 ヶ月前
7
7 ヶ月前
日付のテキストボックスからフォームが開けません 7 ヶ月前
9
7 ヶ月前
レポートにおける数値の間隔を広げる方法 7 ヶ月前
12
7 ヶ月前
リストボックスから複数選択しそれをテーブルに格納したい 7 ヶ月前
タグリスト
Markdown テーブル生成
Accessのテーブルやクエリのデータを貼り付ける場合は下記で、Markdown書式のテーブルに変換して貼り付けてください。
初心者さんのコードについてのアドバイス
コードには適切なインデント(字下げ)を付けましょう。それがいい加減だとコードが読みづらいし、バグが入り込む原因になります。
dname, tblname, sname, destinationFolder に代入するコードが
For Each ... Eachループ内にあるのは無駄ですね。固定値なので繰り返し代入する必要はないので、
For Each ... Eachの前に移動した方がいいでしょう。For Each f In fl.Filesはフォルダー内のすべてのファイルを取得しますので、拡張子がxlsxかどうか確認するコードが必要になります。私の回答のコードでは、GetExtensionNameで拡張子を取り出して確認してますが、他にLike演算子で下記のようなコードでも可能です。If f.Name Like "*.xlsx" Thenまずはエラー処理なしのコードで実行してみて、インポートに失敗するのかどうか、エラーが出るのかどうか、確認しましょう。そしてその原因が何か特定しましょう。
その原因によって、コードにエラー処理(エラー無視も含む)をすべきなのか、それとも別の対処法がいいかのか、変わってくるでしょう。(エクセルファイルが壊れている、フィールド名が異なっている、他のユーザーがエクセルをファイルを編集中など....)