2017-07-13 10 views
0

ツールからの出力であるCSVファイルがあります。このファイルから特定のデータを読み込む必要があります(B3だけ、その後A13からC17に移動すると、常に同じになります)。その後、msアクセステーブルにインポートする必要があります。これを行うために使用できる関数はありますか?ボタンの後ろに設定すると、ユーザーフレンドリーなのですか?csvファイルから特定のデータをMS Accessにインポートする

+0

_A13からC17_はExcelの範囲です。 csvファイルは基本的にテキストファイルです。 Excelで特定の範囲が必要な場合は、csvをExcelに変換して範囲をインポート(またはリンク)することができます。それ以外の場合は、csv全体をインポートする必要はありません。 – marlan

+0

おそらくもっと簡単な解決策(スプレッドシートに変換してそこから特定の列をインポートする)は、シート全体をインポートするために 'DoCmd.TransferText'を使い、不要な列を削除するか、必要な列をテーブルを削除し、古いテーブルを削除します。 –

答えて

0

は、Excel(名前を付けて保存] - > [Excelブック)にファイルを変換した後、Accessにデータをインポートするには、ボタンの後ろにコードの行を使用:

DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel9, YourTableName, YourFileName, False, "B3" 
DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel9, YourTableName, YourFileName, False, "A13:C17" 

データがアクセスになると、あなたはそれで何かをすることができます。
TransferSpreadsheet機能についてのhereのサポートをご覧ください。

Excel.Applicationオブジェクトを使用すると、csvをコードでExcelに変換できます。

+0

あなたの返事をありがとう私はcsvファイルを取って、それをExcelファイルに変換し、それをインポートし始めるところまで作業しているコードを持っています。問題は、各セルを定義していて、 "B3"見つからない。私はここを見回し、同様の投稿を見て、それを呼び出す範囲を指定しようとしましたが、アクセス側から何も見つからない場合はこれが可能ですか、名前を付けずにセルを参照する方法はありますか?これまでのアドバイスに感謝します – Speedy

関連する問題