OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

テキストファイルをAccessへインポートする自動化の記述方法は?

  • すぐに回答を!
  • 質問No.106487
  • 閲覧数540
  • ありがとう数3
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 26% (4/15)

Accessの画面より、コマンドボタンをクリックして、外部データベース(MDB)にテキストファイルをインポートするプログラムを作っているのですが、記述方法がわかりません。どなたか回答願います。カレントデータベース(mdb)へテキストファイルをインポートするプログラムは作成したことはあります。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全4件)

  • 回答No.1
レベル12

ベストアンサー率 65% (276/422)

どもども田吾作7です。 (普段はプログラミングのVisualBasicのページに回答しております。) 補足お願いします。 1.B.mdbからA.mdbにデータをインポート?それともB.csvからA.mdbにデータをインポート? 2.DBの接続方式はDAOですか?ADOですか?(DAOならばCurrentDBが使えるはず) 3.取り込むデータがCSV(などのテキスト形式)である場合 ...続きを読む
どもども田吾作7です。
(普段はプログラミングのVisualBasicのページに回答しております。)

補足お願いします。

1.B.mdbからA.mdbにデータをインポート?それともB.csvからA.mdbにデータをインポート?

2.DBの接続方式はDAOですか?ADOですか?(DAOならばCurrentDBが使えるはず)

3.取り込むデータがCSV(などのテキスト形式)である場合、ヘッダ項目が記されていますか?

以上のことがわかれば、コードを書くことが出来るのですが・・・

でわでわ
補足コメント
mino3

お礼率 26% (4/15)

補足を以下に記述します。

1.CSV(Txt)からmdbにデータをインポートします。CSV(Txt)ファイルは固定長です。

2.DBの接続方式は、DAOを考えております。

3.CSV(Txt)にヘッダ項目は、記されておりません。

再度、回答よろしくお願いします。
投稿日時 - 2001-07-23 09:56:42

  • 回答No.3
レベル12

ベストアンサー率 65% (276/422)

どもども田吾作7です。 サンプルです。 Accessの1番目です。 解らなかったら、カキコしてください。 ...続きを読む
どもども田吾作7です。

サンプルです。
Accessの1番目です。
解らなかったら、カキコしてください。
補足コメント
mino3

お礼率 26% (4/15)

サンプルを拝見させて頂きました。以下の部分が理解できません。

1.'文字列を Unicode からシステムの既定のコード ページに変換
wkSpotStr = StrConv(wkStr, vbFromUnicode)

2.'StartPositionバイト目からFiledLengthバイト文字列を抜き出す
wkSpotStr = MidB(wkSpotStr, StartPosition, SpotFldLength)

3.'システムの既定のコード ページを使って、文字列をUnicode に変換
wkSpotStr = StrConv(wkSpotStr, vbUnicode)

※特に、1.2が理解できません。回答よろしくお願いします。
投稿日時 - 2001-07-24 12:05:52
  • 回答No.4
レベル12

ベストアンサー率 65% (276/422)

どもども田吾作7です。 解説いたします。。。 "コード ページ" とは、記号 (文字、数字、区切り文字) を文字番号にマップするために、オペレーティング システムが使用する内部テーブルです。 異なるコード ページは、異なる国で使用される文字セットをサポートしています。コード ページは番号で表され、たとえば、コード ページ 932 は日本語の文字セットを表します。また、中国語 ...続きを読む
どもども田吾作7です。

解説いたします。。。

"コード ページ" とは、記号 (文字、数字、区切り文字) を文字番号にマップするために、オペレーティング システムが使用する内部テーブルです。 異なるコード ページは、異なる国で使用される文字セットをサポートしています。コード ページは番号で表され、たとえば、コード ページ 932 は日本語の文字セットを表します。また、中国語の文字セットの 1 つは 950 というコード ページで表されます。
"Unicode" とは、ISO (International Standards Organization) の文字標準。Unicode は 16 ビット (2 バイト) のコード方式を使用して、65,536 文字の領域を確保しています。Unicode には、句読点、数学記号、および注釈記号が含まれています。また、将来の拡張用に空き領域も確保されています。


という説明ではわからないですよね?
要は、1バイトはきちんと1バイトに扱おうということです。
例をあげると・・・

LenB("ア") ← 半角
LenB("あ") ← 全角
これはどちらも2を返します。


固定長となると、全角は2バイト、半角は1バイトとして表現されます。
このままでは、半角文字が2バイトとして計算されるために、半角と全角を切り分ける必要があります。
試しに
LenB(StrConv("ア"),vbFromUnicode) ← 半角
LenB(StrConv("あ"),vbFromUnicode) ← 全角
を行ってください。
半角と全角では、返り値が違うと思います。
半角は1
全角は2
ついでに・・・
LenB(StrConv("アあ"),vbFromUnicode) ← 半角と全角
返り値は3


これは例えをLen関数でしておりますが、MIDB,LEFTB,RIGHTBと言ったような、バイト数による文字列操作には欠かせない処理です。


実際に書いたコードでいうと
1.wkSpotStr = StrConv(wkStr, vbFromUnicode)
で変換して
2.wkSpotStr = MidB(wkSpotStr, StartPosition, SpotFldLength)
で、変換した文字列をStartPositionバイト目から、長さSpotFldLengthバイトの文字列を抜き出してます。
しかし、このままでは1番の処理を行っているために、何が書いてあるのかチンプンカンプンなので、抜き出した文字列を
3.wkSpotStr = StrConv(wkSpotStr, vbUnicode)
により、私たちのわかる文字コードに戻しています。

ご理解いただけたでしょうか?
お礼コメント
mino3

お礼率 26% (4/15)

理解いたしました。そして、数々の回答ありがとうございました。
また何かあったらよろしくお願いします。
投稿日時 - 2001-07-27 14:12:13
  • 回答No.2
レベル12

ベストアンサー率 65% (276/422)

どもども田吾作7です。 さらに質問&提案を追加します。 質問1.固定長テキストファイルと、取込み先のmdbのテーブルのフィールドの順番は一緒ですか? 質問2.固定長テキストファイルの後ろの空白部分は削除しますか? 提案3.固定長テキストじゃなければいけないのですよね?カンマ区切りじゃダメなんですよね? 提案4.ヘッダ項目を追加するのはダメですか? 提案3・4を行っている意味は、もし ...続きを読む
どもども田吾作7です。

さらに質問&提案を追加します。

質問1.固定長テキストファイルと、取込み先のmdbのテーブルのフィールドの順番は一緒ですか?
質問2.固定長テキストファイルの後ろの空白部分は削除しますか?
提案3.固定長テキストじゃなければいけないのですよね?カンマ区切りじゃダメなんですよね?
提案4.ヘッダ項目を追加するのはダメですか?

提案3・4を行っている意味は、もしカンマ区切り・ヘッダ項目ありのCSVテキストファイルであれば、SQL文1文で、全データのインポートが可能だからです。
もしこの提案がダメであれば、一つ一つのフィールドデータを書き込んでいかなければなりませんので、ちょっとレスが遅れるかもしれません。


以上を回答いただけたら、コードを記入します。

でわでわ
補足コメント
mino3

お礼率 26% (4/15)

質問&提案についての回答です。

質問1.固定長テキストファイルと取込み先mdbのテーブルのフィールドの順番は一緒です。

質問2.固定長テキストファイルの後ろの空白部分は削除します。

提案3.4につきましては、顧客先の仕様上、カンマ区切り及びヘッダ項目の追加は、困難です。申し訳ありません。

以上です。再度回答よろしくお願いしましす。
 
投稿日時 - 2001-07-23 15:51:25
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ