Access2013で、
指定の場所に置いてあるCSVファイルに対して、
「リンクテーブルを作成してソースデータにリンクする」設定にてテーブルを作成し、
このCSVファイルが更新されても最新の状態にてレポートを出力できるようにしています。
しかしこのCSVデータが作成される仕様により、1行目に余計な文字列、2行目に項目名、3行目以降にデータが入っているため、毎回CSVデータの1行目を削除する手作業が発生しています。
2行目以降をリンクするようにするとか、テーブルの3行目以降を取り出すクエリとか方法はありませんでしょうか?
No.2ベストアンサー
- 回答日時:
>2行目以降をリンクするようにするとか、
>テーブルの3行目以降を取り出すクエリとか方法はありませんでしょうか?
D:\ナントカ\コントカ\オリジナル.csv
に余計な一行があったとして下記のコードを標準モジュールに作成し
Sub LineCut1()
Dim fSo As Object
Dim buf As Variant
Dim f As Object
Set fSo = CreateObject("Scripting.FileSystemObject")
With fSo.GetFile("D:\ナントカ\コントカ\オリジナル.csv").OpenAsTextStream
.SkipLine
buf = .readall
.Close
End With
Set f = fSo.OpenTextFile("D:\ナントカ\コントカ\オリジナル_改.csv", 2, True)
f.Write buf
f.Close
End Sub
出来た"D:\ナントカ\コントカ\オリジナル_改.csv"をリンクテーブルとさせればよいのでは?
オリジナル.csv が更新される都度実行する必要がありますが
>2行目以降をリンクするようにするとか、
CSVのようなテキストファイルでは無いかと。
>テーブルの3行目以降を取り出すクエリとか方法はありませんでしょうか?
一旦取り込んでからだとデータ型の変更などが必要になりそうなので
厄介です。
オリジナル.csv の使われ方がイマイチ不明なのですが
上記のSub LineCut1() を、 Function LineCut1() に改名して
autoexec マクロに
プロシージャの実行に、LineCut1()
としても良いかもですね。
No.1
- 回答日時:
>>2行目以降をリンクするようにするとか、テーブルの3行目以降を取り出すクエリとか方法はありませんでしょうか?
Accessのことはほとんど忘れたので、何とも言えませんが、現在の取り込みのプログラム見ないと何とも言えません。
容易に考えるなら、ループ処理かけて取り込む。処理だったりするなら、1回目のループ飛ばせばいい。
とかなんですが、現状の構成が分からないとなんとも。
>>毎回CSVデータの1行目を削除する手作業が発生しています。
まぁ、でも、手作業が許されてるなら、わざわざ、今動いてるプログラムいじって、
「動かなくなる可能性」というリスクを背負う意味がない。
「CSVデータの一行目を削除する」という、バッチ処理でも、スクリプト作成して、実行するほうが、よっぽど楽かな。と思いますよ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Excel(エクセル) PowerQueryで行数の指定はできますか? 2 2022/08/26 11:13
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- その他(プログラミング・Web制作) Pythonで、データファイルと列名ファイルを1つのファイルにしたいです。 1 2023/07/27 20:29
このQ&Aを見た人はこんなQ&Aも見ています
-
風水の観点で選ぶ観葉植物とは?置き場所や上げたい運気ごとの注意点を紹介!
観葉植物で運気をアップするコツを、風水デザイン1級建築士の福島昌彦さんに伺った。
-
Access インポート
Access(アクセス)
-
テーブルリンク エクセルの4行目を先頭行にしたい
Access(アクセス)
-
エクセルのデータをアクセスにインポートしたいのですが、フィールド名として使用できないデータがあるようで・・
Access(アクセス)
-
-
4
アクセスにtxtファイルの指定行のみインポートしたい
PowerPoint(パワーポイント)
-
5
【VBA】テキストファイルを指定行数からの読み込み
Visual Basic(VBA)
-
6
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
7
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
8
2つ目のレコードの値を取得するには?
Access(アクセス)
-
9
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
-
10
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
11
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
12
前のレコードの値を自動で入れたい
PowerPoint(パワーポイント)
-
13
Accessのフィールド名に半角括弧を使ってしまった
Visual Basic(VBA)
-
14
エクセルからアクセスにインポートすると、エラーが出てしまいます。原因を教えていただけませんか。
Access(アクセス)
-
15
Access サブフォームでの選択行の取得
その他(データベース)
-
16
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
17
VBAで、なぜかSendkeyが効きません。
PowerPoint(パワーポイント)
-
18
Accessのテーブルデータを一気にVBAで追加したい・・
その他(データベース)
-
19
Accessでレコードを別テーブルへコピーするには
Access(アクセス)
-
20
VBA:Openステートメントで開いたCSVファイルの特定行を削除する方法
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
(ACCESS)複数mdbからのデータ...
-
ACCESS テーブルに2行目から取...
-
Access2019でフォームから入力...
-
エクセルからアクセスにインポ...
-
EXCELで帳票フォームをつくりそ...
-
画面から入力した値がDBに登録...
-
jspのプログラムについて
-
Accessでボタンを押したらエク...
-
CLOB型へのINSERT
-
列が255以上のCSVファイルをAcc...
-
異なるスキーマからデータを抽...
-
ACCESS 複数テーブル・複数フィ...
-
特定のスキーマのテーブルを一...
-
検索結果の列数を動的に変更したい
-
ORA-00959: 表領域'****'は...
-
データを削除しても表領域の使...
-
count(1)とcount(*)の違い
-
viewのバックアップ
-
テーブルからのselectにおいて...
-
DELETE文でFROM句を省略した場合
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルからアクセスにインポ...
-
C#でaccdbファイルのテーブルの...
-
ACCESS テーブルに2行目から取...
-
(ACCESS)複数mdbからのデータ...
-
テーブルのリンク(ACCESS)
-
他ファイルのテーブルの情報を...
-
Accessでボタンを押したらエク...
-
画面から入力した値がDBに登録...
-
アクセスマクロで、csv データ...
-
データ読込時のタイムアウト
-
jspのプログラムについて
-
csvをSQLiteに取り込むと文字化...
-
ACCESSとエクセルのリン...
-
ACCESSのVBAを利用して、Excel...
-
Access2019でフォームから入力...
-
リソースファイルとロケールに...
-
VBでCSVデータをMDB
-
グループ単位にCSVファイル...
-
アクセス初心者に注意点を教え...
-
ACCESS 2003では、テーブルのリ...
おすすめ情報