• 締切済み

VBAについて教えてください。

今、AccessでCSVをデータベースに取り込むモジュールを考えています。 CSVの内容は、ID(主キー)と名前、住所の3つの項目があります。CSVを取り込む際に、もしIDが空白だったりのエラーがあった場合は、その行を飛ばして次の行から続けて取り込みます。 最後にエラーのあった行をEXCELで表示させます。 何か参考になコメントやホームページを教えてください。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

test8.csvに対してアクセスのファイルの住所録1を作る例。 なおエラー分をエクセルへ記録する部分は、構想が固まらず省いています。エクセルの直接書き込み、CSVファイル作成・エクスポート、 アクセスファイル作成・エクスポートなど) 空の住所録1テーブルを作成しておき、 アクセスのモジュールに貼り付けて実行。少数例でテスト済み。 Sub test03() Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Set cn = CurrentProject.Connection Set rs = New ADODB.Recordset rs.Open "住所録1", cn, adOpenKeyset, adLockOptimistic '------ Open "test8.csv" For Input As #1 While Not EOF(1) Line Input #1, s t = Split(s, ",") If t(0) = "" Then Else '----- rs.AddNew rs.Fields("ID").Value = t(0) rs.Fields("氏名").Value = t(1) rs.Fields("住所").Value = t(2) rs.Update rs.MoveNext End If Wend rs.Close: Set rs = Nothing cn.Close: Set cn = Nothing Close #1 End Sub

morumomo
質問者

お礼

すごく丁寧な返答ありがとうございます!

  • TIMERUN
  • ベストアンサー率0% (0/3)
回答No.2

とりあえず、MOUG(モーグ)という(質問掲示板)サイトがお勧めです。

morumomo
質問者

お礼

ありがとうございます。 さっそく見てみます。

回答No.1

大きく3機能ですね。 1.CSVの読み込み 2.アクセスへのデータ取り込み+エラー判定 3.エクセルへの吐き出し 1+2の機能は、Accessのインポート機能を利用したいところですが、エラー処理を加えることから、独自で機能を実現させた方がよさそうですね。 >何か参考になコメントやホームページを教えてください。 これらの3機能の全てを、質問者さんは全くわからない状況ですか? っていうか、これらの各機能を個別に捕らえると、全てここの掲示板の履歴に存在しています。 さらにこれら全てを答えるのは、ちょっと質問として大きすぎると思います。 現在、途中まででも完成されているのであれば、ネックになっている部分を個別に質問された方が、よいと思いますよ。

morumomo
質問者

お礼

返答ありがとうございます。 ネックになっているものは、エクセルへの吐出しです。 単純にデータをエクセルに写すことは、出来るのですが エクセルのシートをアクセスで加工する方法が分かりません。例えば、指定したセルの色を変える。セルを結合する。など・・・

関連するQ&A