【先着1,000名様!】1,000円分をプレゼント!

人の書いたVBAを引継いでいます。
テキストファイルのインポートで、定義名が指定されているのですが、この定義名は、いったいどこで確認することができるのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (3件)

>VBEウィンドウで、DAO3.x に参照設定して試してください。


VBEウィンドウに切り替えて(Ctrl + G で変わります)
下記リンクのような画面で(真ん中過ぎまでスクロールすると出現)
設定します。
http://www.mahoutsukaino.com/ac/ac2002/vba/vba17 …

>ツール → オプション → システムオブジェクト にチェックを入れてください。
端折って書いてしまったので誤解を与えたようで申し訳ない・・・
こちらはAccess起動時の画面(VBEでは無い方)で行います。

で、MSysIMEXSpecs テーブルの SpecName フィールドに定義名が格納されるようです。
各テーブル・フィールドの説明は前レスのRuri+さんのリンクから
インポート・エクスポート定義ファイルの内容
http://www.ruriplus.com/msaccess/exp/exp0130.htm
MSysIMEXSpecs テーブルでどの様に読み取るかの定義
MSysIMEXColumns テーブルでどの様に保存するかの定義
を行っているようです。
ここいら辺から私も分からないのですけど。
    • good
    • 0

こちらが参考になるかと思います。


VBEウィンドウで、DAO3.x に参照設定して試してください。
ツール → オプション → システムオブジェクト にチェックを入れてください。
※インポート定義を保存して無い場合は中身は空っぽです。
プロシージャによるインポート・エクスポート定義の作成
http://www.ruriplus.com/msaccess/tch/tch_040.html
    • good
    • 0
この回答へのお礼

ありがとうございます。
現在の実力ではちょっと難しいです。

VBEウィンドウで、DAO3.xに参照設定する方法
と、やろうとしていることの意味が分からないのです。参照設定、というメニューはあるようですが、DAO3.xにする、とは、どういうことでしょうか?

ツール→オプションを選択しても、システムオブジェクト、といった記述が見られません。

これらについても、ご教示いただけると、ありがたいのですが。

お礼日時:2006/08/02 07:43

Accessは不得手なもので、もっと簡単な確認方法があれば私も知りたいのですが、、、、



実際にファイル-外部データの取り込み-インポートで、テキストファイルを選び、テキストインポートウィザードを立上げてやると、ダイアログの設定ボタン-定義ボタンで確認出来ます。

一応 Access97~2000での体験です。
    • good
    • 0
この回答へのお礼

ありがとうございます。
初心者の私には、とても簡単な確認方法でした。
おかげさまで確認できました。
いろいろな(使われていないものも)定義を確認できました。

お礼日時:2006/08/02 07:40

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qアクセス(ACCESS) インポート定義について

アクセスのインポート定義ファイルのコピーをしたのですが格納場所とかあるのですか?

現在使用中のMDBファイルが幾つかあります。MDBファイル毎にインポート定義ファイルが設定されてしまうので、別のMDBで同インポート定義ファイルを使用したい場合は、再度同じ仕様のインポート定義ファイルを作成しなくてはならないので面倒です。
他に、良いやり方がありましたらご教示願います。

Aベストアンサー

No2 です。
言葉が足りませんでした。
> ファイルを指定して「インポート」をクリック。
インポート定義が含まれる、mdb ファイルを指定して「インポート」をクリック。
です。

Qマクロにてaccessへテキストファイルをインポートする方法

マクロを利用しaccessへテキストファイルをインポートしようとしているのですが、
どのHPを参照しても、
マクロを利用してのテキストインポートはできないみたいなことが書かれてます。
一度、CSVに落として実行するしか方法はないのでしょうか?

Aベストアンサー

1度、「ファイル」「外部データの取り込み」でテキストファイルを参照
左下の「設定」ボタンでフィールドの設定をして定義を保存します。

マクロにて「テキスト変換」を選び
[変換の種類]区切り記号付きインポート 又は 固定長インポート
[定 義 名]上記で保存した定義
[テーブル名]保存するテーブル
[ファイル名]テキストファイル名(パス付き)

これでできると思いますが...

QAccessのマクロでCSVファイルをインポートする

Accessのマクロ・VBAにてCSVファイルを
インポートしたいのですが、うまくいきません。

DoCmd.TransferText acImportDelim, , "C:\Documents and Settings\yoshimi\My Documents\顧客マスタテーブル.csv", False
現在のコードです。

「オブジェクト'0.txt’が見つかりませんでした。
オブジェクトが存在していること、名前やパス名が正しいことを確認
してください。」
とエラーが表示されます。

過去ログを検索し、似たようなものを見つけ同じようにしたつもりです。
http://okweb.jp/kotaeru.php3?q=1691138
(回答のANo.1の定義の保存場所が分からずしていません)

どこがおかしいのか教えていただきたいです・・・

Aベストアンサー

インポート先(保存先)となるテーブルが指定されていないようです。

その分、カンマ(,)が1個少ないなっているために引数がずれて判断され、インポートするファイルが「C:\~顧客マスタテーブル.csv」ではなく、「0.txt」だと判断されているのではないかと思います。
(「False」がファイル名と解釈され(False=0)、テキストファイルと解釈されて拡張子「.txt」をつけてエラー表示された、と)

とりあえず、「Test」テーブルを作成し(フィールドは仮でF1,F2の2つでテキスト型)、「,"C:\~」の前に「,"Test"」を入れて実行してみて下さい。
(csvファイルが3列以上の構成であれば、「テーブル'Test'にはF3フィールドがありません」とのエラーが表示されるようになりると思いますので、適宜F3,F4,・・・と、必要な列数を追加して下さい:定義のかわりです)

Qインポート時のエラー「データ型の変換エラー」

ACCESS2000を使用しています。
CSVファイルをマクロを使い、インポートしようとしているのですが、ある列に「33300G2」というデータがあります。
インポートのマクロを実行するとそのデータのみがインポートエラー(エラー内容は「データ型の変換エラー」)となってしまいます。
ちなみに、エラーが出る列は、「33300G2」以外全てが数字のみなのですが関係あるのでしょうか。
もし原因らしきものがわかればアドバイスよろしくお願いいたします。

Aベストアンサー

インポート定義をして下さい。
インポート→設定→データ型を変更して下さい。
何かあれば補足して下さい。
がんばれ

QAccessのマクロでモジュールを実行させたい。

Access2002を勉強中の初心者です。

AccessでDB1という名前のデータベースを作成し、その中で、モジュール1というモジュールを作成しました。これを実行するマクロを作成したく、次のようにマクロを作成しました。
マクロのデザイン画面でアクションに「プロージャの実行」を選択、プロージャ名入力覧の右側の...のボタンを押して式ビルダ画面を表示、ここの「関数」フォルダを開いてDB1を選択、表示されたモジュール1を貼り付けてOK。
しかし、このマクロを実行すると、次のエラーとなります。「DB1 指定されたDB1が見つけることができない関数名が含まれています」

根本的に方法が間違っているのでしょうか?
アドバイスをよろしくお願いします。

Aベストアンサー

#1です。

ちょっと時間ができたので、Accessのヘルプで、
 "RunCode/プロシージャの実行" アクション
についてのトピックを見てみました。

結論から言うと、基本的な考え方が間違っているみたいです^^;。

「プロシージャの実行」アクションでは、「Function」プロシージャを指定するようです。
Subプロシージャではエラーになります。


つまりご質問の件では、
「Subプロシージャを呼び出すFnctionプロシージャ」をまず書かなけれえばならない。
そして、マクロのアクションでは、あらためてこのFunctionプロシージャを指定しなければいけません。

QAccessでボタンを押したらエクセルデータを読み込み処理をしたい

よろしくお願いします。
AccessからExcelを開けるようにしたいのですが、
コードの記述方法がいまいちわかりません。
教えて頂けますでしょうか。

最終的には、ボタンをクリックしたら、ExcelファイルにあるデータをAccessに取り込み、それでDM用のラベルを作りたいと考えています。
勉強が必要なので、少しずつやろうと考え、
開く為のコードからいろいろいじってみようと考えました。
もし、他に効率の良い学習方法があればそちらもお願い致します。

Aベストアンサー

お世話になります。

>コードの記述方法がいまいちわかりません。
と言う事でしたので,最も簡単な方法を。

(1)Accessのマクロを作ります.
 [アクション]で[ワークシート変換]を選択し,
 画面の下部にある,[アクションの引数]に
 適宜入力します。
 
 作成したマクロを適当な名前をつけて保存します。

(2)Accessメニューバーの
 [ツール]→[マクロ]→[マクロを VisualBasicに変換]を選択し,変換します。

変換されたモジュールを見てみれば,
どんな感じでAccessテーブルにインポートするか
解ると思います。

QACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ

ACCESSで空白のデーターをクエリで判定/識別する方法を教えてください。
EXCELでは空白を""で判定/識別表していますがACCESSではどうなるのでしょうか。

下の例はフィールドに試験番号があればその番号を、空白なら”欠席”と表示しようとしています。
IIf(([試験番号]="空白の場合何を入れる?"),[試験番号],"欠席")

Aベストアンサー

もうひとつの書き方は
式1: IIf([試験番号] Is Not Null,[試験番号],"欠席")
第2、第3引数の、質問の順序にあわせるとこうなる。

QACCESSで毎回CSVファイルをテーブルにインポートする

ACCESSでGUIで毎回CSVファイルをインポートしていますが、
(テーブル→新規作成→デーブルのインポート)
自動化?VBA?することはできるのでしょうか。
ACCSESSは初心者でよくわかっていません。
よろしくおねがいします。

Aベストアンサー

>「マクロに設定」のやり方がわかりません。
え、そうなんですか。
アクセスを開くと左側に「マクロ」ってありませんか。
そこで新規作成します。
テーブルを削除するとか、クエリを開く(実行する)とか、動作を順番に設定するのです。
任意に実行したいなら、マクロ名は任意で構いません。
mdbを開いたら、必要なときにマクロを実行するだけです。

>こちらはoffのする方法が、チェックを外せばいいということでしょうか。
見つけましたよね。そのチェックを外します。

あのー、とりあえず解説書などお持ちではないですか。
最低限のことはそういう書籍で勉強して欲しいのですが。(マクロがわからないことにびっくりしたので)
ここで一つ一つやり取りするわけにもいかないので。

QAccessのRefresh・Requery・Repaintの違い

Requeryはもう一度ソースレコード(テーブル)を読み込むようです。このとき、テーブルの先頭レコードに移動してしまいます。
Refreshは最新のレコード(テーブル)を再表示するような気がします。レコードの移動は起こらない気がします。
Repaintは、VBAでキャプションなどを変更したとき使っています。
でも、よくわかっていません。
どんなときにどんなメソッドを使えばいいのでしょうか?
詳しい方、よろしくお願いいたします。

Aベストアンサー

たびたびすみません。
調べてたらこんなのがでてきました。
http://www.nurs.or.jp/~ppoy/access/access/acF007.html

参考URL:http://www.nurs.or.jp/~ppoy/access/access/acF007.html

Qアクセスマクロで、csv データを取り込むときに起こるエラー

こんにちは、いつも質問ばかりですみません。
WINDOWS2000 で ACCESS 97 ユーザーです。

品番.CSVがあるとします(数千行)
品番は、
100
A100
のように、数字のみやローマ字が入り混じっています。

ACCESS 側に「品番」テーブルを作り、データ型をテキストにします。その上で
 ファイル
 -外部データの取り込み
 -インポート
 -次のテーブルに保存する「品番」
でテーブルを指定すると、きちんと入ります。

が、マクロで
 テキスト変換
 -区切り記号付インポート
 -テーブル名「品番」
 -ファイル名「品番.CSV」
 -フィールド名の設定「はい」
で実行すると、
「品番インポートエラー」テーブルが別に作成され、
A100
を「データ型の変換エラー」と見なしています。

…どうしてでしょう。

Aベストアンサー

>DoCmd.TransferText acImportDelim, "", "TEMP", "D:\TEMP.CSV", True, ""
インポート定義を作成して
DoCmd.TransferText acImportDelim, "インポート定義名", "TEMP","D:\TEMP.CSV", True
ではどうでしょうか。

>A100を「データ型の変換エラー」と見なしています
数値文字混在のデータで型変換エラーが出でしまうのは最初のデータが数値の場合それ以降を数値として扱ってインポートしようとして文字があるとエラーになるような事例があったと思ったのですが前の事なので定かではありません。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング