こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

拡張子のないファイルをACCESSにインポート

ACCESS2003についての質問です。
データをインポートする際、拡張子の付いていないファイル(データの内容は区切り記号付きテキストファイルで表示することができます。)をACCESSにインポートする方法を教えて下さい。
.txt や .csv などの拡張子をつればACCESSでインポートできるファイルになるのですがその手間を省けないか?と言われています。
それ位してくれよと思うのですが・・・
VBAは少し勉強しているのですが、VBAを利用すればACCESS上でファイルに拡張子を付け加える事は可能になるのでしょうか?教えてください。

投稿日時 - 2008-03-15 13:13:22

QNo.3864692

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

DoCmd.TransferText,acImportDelim,インポート定義名,テーブル名,ファイル名(完全パス名),・・・
なので、
DoCmd.TransferText , acImportDelim, , "Tスタッフマスタ", "C:\Documents and Settings\taro\デスクトップ\スタッフマスタ"
で大丈夫なはずですが、
取り込むデータとテーブルのフィールドの属性が合致していないようなエラーメッセージですね。
> ファイルの中身は
> 「101,"早川 守",2004/5/1,"田中物流","梱包作業"」
と言われているので、
「Tスタッフマスタ」のフィールドが
数値(整数か長整数)型、テキスト型、日付/時刻型、テキスト型、テキスト型
になっているか確認してください。

投稿日時 - 2008-03-18 13:41:17

ANo.3

多分Accessで手作業でインポートする際に、ファイルの種類の選択肢中に
「拡張子なし」あるいは「全てのファイル」がないので、拡張子なしのファイルが選択できなということでしょう。
AccessのVBAでは拡張子が無くてもインポート出来ます。
フィル名が解っていて、かつ区切り記号も解っているなら、
DoCmd.TransferText,acImportDelim,インポート定義名,テーブル名,ファイル名(完全パス名),・・・
で可能です。
詳しくは以下を...
http://www.accessclub.jp/samplefile/help/help_162_1.htm

投稿日時 - 2008-03-16 01:55:22

お礼

以下のコードを試してみましたが「いずれかの引数とデータ型が対応していません。」というエラーが出てきました。
(デスクトップ上にある拡張子の無い「スタッフマスタ」ファイルをテーブル「Tスタッフマスタ」にインポートする)
Private Sub cmdインポート_Click()
DoCmd.TransferText , acImportDelim, , "Tスタッフマスタ", "C:\Documents and Settings\taro\デスクトップ\スタッフマスタ"
End Sub
ファイルの中身は
「101,"早川 守",2004/5/1,"田中物流","梱包作業"」
上記の様なレコードです。
vizzarさんの方法を出来るようになりたいので間違いを教えていただけませんか?

投稿日時 - 2008-03-17 22:42:54

ANo.2

メモ帳で
氏名,住所,年齢、所属
a,sd,f,g,hgg
sd,f,gh,jku
(内容はでたらめ)
拡張子なしで「CSV拡張子」という名で保存した。どんな名前でも良い。拡張子をつけない。
ーー
アクセスのモジュールで下記をつくり
Sub test04()
Name "C:\Documents and Settings\XXX\My Documents\CSV拡張子" As "C:\Documents and Settings\XXX\My Documents\CSV拡張子.csv"
End Sub
を実行した(xxxの部分はユーザー名)
ーー
メモ帳で確認すると
今度はファイル種類を
*.csv
と指定して探せる。
メモ帳画面に
上記と同じデータがでた。
ーーー
Name 変更前 変更後  でファイル名が変えられる。拡張子も含めてがファイル名である。
ーー
私にとって余りやる作業では無いので、質問者で確認してみてください。
後はテキストのインポートのアクセスVBAコードを続けて書けばよい。

投稿日時 - 2008-03-15 20:24:58

ANo.1

VBAで、色々とやり様はあると思いますが、一例として、
参考URLのコードは、EXCEL VBAの事例ですが、ACCESSの標準モジュールに貼り付けて実行すると、動作します。ファイルに対して色々な操作が可能ですので、ご参考にして下さい。

参考URL:http://officetanaka.net/excel/vba/filesystemobject/file.htm

投稿日時 - 2008-03-15 17:03:46

お礼

参考URLにあるコードを貼り付けてやってみたら拡張子付け加えられました。びっくりしました。やぁーいろんな事ができるんですね。VBAたのしいですね。

投稿日時 - 2008-03-17 21:39:13

あなたにオススメの質問