No.746
0
回数0
優先度0
発生日2018/06/19
仮完了
完了日
期限
タイトルインポート
サブタイトル
内容
No159681.エクセルインポート時の空レコードの処理
タイトル
: エクセルインポート時の空レコードの処理
記事No
: 159681
投稿日
: 2010/06/13(Sun) 22:59
投稿者
: ステラ
OS:vista
Access Version:2007

いつもお世話になります。

VBAでエクセルファイルからインポートして表Aを作っています。

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "表A", FileName, True

その後、フィールドを検査するループ処理をしていますが、どうやらエクセルファイルを処理する際に、行削除でなく値削除でシートに表示されるレコードを削除した場合、ファイル表Aに空白行がインポートされていしまうことに気付きました。

ループは空白行に来ると、エラー94、NULLの使い方が不正ですと出てしまいます。


一番は、インポートするときにどのような表整理方法で整理しても、シートに値の入っている行だけをインポートできるといいのですが・・・
(エクセルファイルは、新しい形で別から供給されるものなので、どんなファイルが来るかその時々なのです。)

何かいい方法があればご教授いただければうれしいです。

タイトル
: Re: エクセルインポート時の空レコードの処理
記事No
: 159689
投稿日
: 2010/06/14(Mon) 09:13
投稿者
: '77'SunsetStrip
> その後、フィールドを検査するループ処理をしていますが、どうやらエクセルファイルを処理する際に、
> 行削除でなく値削除でシートに表示されるレコードを削除した場合、ファイル表Aに空白行が
> インポートされていしまうことに気付きました。
こりゃどういうことなんですか?
文章を読んだだけではイメージできません。

タイトル
: Re^2: エクセルインポート時の空レコードの処理
記事No
: 159710
投稿日
: 2010/06/14(Mon) 22:18
投稿者
: ステラ
'77'SunsetStrip さん、いつもレスありがとうございます。
レスが遅くなって済みません。

> > その後、フィールドを検査するループ処理をしていますが、どうやらエクセルファイルを処理する際に、
> > 行削除でなく値削除でシートに表示されるレコードを削除した場合、ファイル表Aに空白行が
> > インポートされていしまうことに気付きました。
> こりゃどういうことなんですか?
> 文章を読んだだけではイメージできません。

説明が悪くてすみません。

元になるエクセルファイルをテストしているときに、エクセルファイルの内容を少なくしようと、データを削除しているときにおこりました。

書いてある通りなのですが、たとえば5つのレコードを削除する際、5行すべてを選んで行削除を実行すると、インポートされたファイルに空白行はできないのですが、この5つのレコードをセルを選んでDeleteキーでセル内容を削除すると、インポートされたファイルに5行分の空白行が入ってしまうのです。

もちろん、削除する内容がレコード群の途中の場合は自然と行削除するので問題ないのですが、末のレコードを削除する際、うっかりセル内容を消去する方法で削除をすると、インポートファイルに入ってきてしまうのです。

インポートに使っている式は

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "表A", FileName, True

で、Filenameは、「ファイルを開く」のコントロールから読み込んでいます。

わかっていただけたでしょうか??

インポートはエクセルシート全体を読み込んできているつもりですし、レコードが多くなっても、特定の範囲で無く全部を読み込んできます。

タイトル
: Re: エクセルインポート時の空レコードの処理
記事No
: 159711
投稿日
: 2010/06/14(Mon) 22:26
投稿者
: よろずや
> その後、フィールドを検査するループ処理をしていますが、どうやらエクセルファイルを処理する際に、行削除でなく値削除でシートに表示されるレコードを削除した場合、ファイル表Aに空白行がインポートされていしまうことに気付きました。
>
> ループは空白行に来ると、エラー94、NULLの使い方が不正ですと出てしまいます。

ループの中に、NULL かどうかを判定する処理を追加する。

タイトル
: Re^2: エクセルインポート時の空レコードの処理
記事No
: 159714
投稿日
: 2010/06/15(Tue) 00:46
投稿者
: ステラ
よろずやさん、レスありがとうございます。

インポート時にはさけられないということでしょうか・・・
区分
ステータス
中区分業務
小区分
発生元
発生元担当
対応
対応2
連絡先
対応者新実
URL
0
大区分todo
0
登録日2018-06-19 09:03:40
最終アクセス日2018-06-19 09:03:40
更新日2018-06-19 09:03:40