- ベストアンサー
未定義関数(前にあったような質問)
おはようございます。是非皆様のお知恵をお借りしたく質問いたします。 ExcelとAccessとのデータ連携についてですが、Excelでメニューバーの ”データ(D)-外部データの取込(D)-新しいクエリーの作成(N)”を選択し "データソースの選択 MS ACCESS97 Database*"を選択 EXCELシートにデータをおとしたいAccessのファイルを指定してその中の 例えばクエリー5のデータを指定したときに式に未定義関数’Round’が あります。と表示されデータをExcelにおとせなくなります。 ヘルプボタンを押すと"ドライバのエラーです。詳細については、使用しているドライバのマニュアルを参照してください。"とのコメントです。 データ連携できる解決方法を教えて下さいお願い致します。 使用ソフト:Access97,Excel97 ※Access97でRound関数がないためモジュールでFunctionでRoundを作成し ました。
- hisaaoi
- お礼率71% (30/42)
- オフィス系ソフト
- 回答数2
- ありがとう数2
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 もともと、MS-Query側では、Roundは、いくらユーザー定義関数を使っても、Access のテーブルからは、取れないのではありませんか?ヘルプには、 「データ ソースに対して、実際に使用できる関数は、そのデータ ソースの ODBC ドライバによって異なります。」と書いてありますから、もしかしたら、Int(フィールド+0.5) が使えるかもしれませんが、ダメなら、一旦、Excelに落としてから、それを加工するしかないと思います。
その他の回答 (1)
関連するQ&A
- アクセスでReplace関数を使用しているクエリがエクセルに読み込めない
ヴァージョンは2003です。 アクセスのクエリをエクセルへ落としたいので エクセル→データ→外部データの取り込み→新しいデータベースクエリでアクセスのファイルを選択し、 読み込みたいクエリを選択して「>」を押すと 『式に未定義関数 'Replace' があります。 』 と言うメッセージがでてしまい回避できません。 たしかにそのクエリではReplace関数を使用しています。 しかしアクセスでは問題なく表示できます。 アクセスに戻り、指定のクエリからReplace関数をなくせば エクセルに読み込むことができます。 以上 回避方法をご存知の方、 ヒントだけでもいいのでご教授よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- 外部データソース選択時「未定義の関数~があります」
友人からの代理質問です。 WindowsXP SP2、Excel2003、Access2003を使用しています。 Accessでモジュール「test」を作成し、クエリー「Q」にその式を使用しています。 Excelのピボットテーブルで、外部データソースに「Q」を指定してフィールドを選択しようとしたところ「Microsoft Query:式に未定義の関数'test'があります」と表示され、操作を続行できません。 モジュール「test」の定義をExcelでする必要があるのではないかと思っていますが、ネットで調べても対処方法がわかりませんでした。 モジュール等、あまり詳しくないため、上記で説明不足の点は補足させていただきます。よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- Excel「外部データの取り込み」でエラーになる
環境:Excel2003、Access2000 Excelで「外部データの取り込み」をして、Accessのクエリを選択するとエラーが出ます。 1.[ツール]-[外部データの取り込み]-[新しいデータベースクエリ] 2.「MS Access Database」を選択 3.ローカル(Dドライブ)の[test01.mdb]を選択 4.クエリウィザードで、[条件検索]クエリを選択し、表示する列を2列ほど選び、次へ次へで進む 5.クエリウィザードの最後で「Microsoft Office Excelにデータを返す」を選択して完了ボタンを押す すると、 「入力テーブルまたはクエリ 'mdb.条件検索' が見つかりませんでした。 そのテーブルやクエリが存在していること、または名前が正しいことを確認してください」 というエラーが出ます。 また、4.で[1全検索-FROM]というクエリを選択すると、エラーの内容が 「 'mdb.' のかっこの使い方が正しくありません」になります。 なぜか 'mdb.' という文字が出てきます。 他のPCでは、同じデータがきちんと取り込めます。 どうしたら、うまくデータが取り込めるのでしょうか? Excelをインストールし直した方が良いのでしょうか? 皆様のお力を貸してください。 よろしくお願いいたします。
- 締切済み
- オフィス系ソフト
- エクセル2000 外部データの取り込み
お世話になります。 これまで、エクセル2003を使用してアクセスのデータを「データ→外部データの取り込み」で取り込んでいました。 今回使用するエクセルが2000になったのですが、2000には「外部データの取り込み」がありません。 「保存したクエリの実行」では、基となるアクセスのデータを選択できません。 「テキストファイルのインポート」では、基となるアクセスのデータを選択できるのですが、2003とは手順が違う上、文字化けになってしまいました。 過去の質問も検索しましたが、解決できませんでした。 エクセル2000でも、2003のようにアクセスのデータを取り込めるのでしょうか? また、取り込めるとしたら、どのような手順を踏めばよろしいのでしょうか? ご回答のほど、よろしくお願いいたします。
- 締切済み
- オフィス系ソフト
- ADOで算術型のRound関数を使いたい
お世話になっております。 ACCESSではRound関数を使うと銀行型で計算してしまうので、算術型で計算するため以下のような定義関数をACCESS上で作成しました。 Public Function Round(X As Currency, s As Integer) As Currency Dim t As Integer t = 10 ^ Abs(s) If s > 0 Then Round = Int(X * t + 0.5) / t Else Round = Int(X / t + 0.5) * t End If End Function この関数を使えばACCESS上でクエリを見た時にはちゃんと算術型の計算結果が表示されるのですが、ADOを使ってExcelで読み込んだ時にはなぜか銀行型の計算結果が表示されていしまいます。 "Round"という関数名が良くなかったのかと思い、"Round2"という関数に変更したところ、ACCESS上は問題なかったのですが、ADOで読み込んだ時に"未定義の関数があります"とエラーが出てしまいました。 ADOで読み込んでも算術型のRound関数で計算するような方法はないでしょうか。
- 締切済み
- Visual Basic
- Accessで式に未定義関数Formatがあります
Access2003で使用していたクエリを、Access2013で開くと、「式に未定義関数Formatがあります」の表示がされて使用することができません。このクエリでは確かにFormat関数は使用しております。対処方法がお分かりになればご教授いただけると助かります。なお、当方VBAとSQLは使えませんのでクエリデザインでの対処方法をご教授いただけると助かります。 よろしくお願いいたします。
- ベストアンサー
- その他MS Office製品
- IF関数ではなくIIF関数を使うのでしょうか?
なぜアクセスのクエリでIF関数を使う時は エクセルのようにIF関数ではなくIIF関数を使うのでしょうか? アクセスのクエリで条件分岐をしたいときはIIFを使っています。
- ベストアンサー
- オフィス系ソフト
- Excelで外部データの取り込み(Access)ができないんです
MOUS Excel 2000上級を受けるためにWin95にOffice 2000・SR-1・SP2をインストールしました。 クエリを作成するとき、テキストではデータソースの選択でMS Access Database*となっているのに私のはMS Access 97 Database(not sharable)になっていて、クエリを完了したら、『Queryから受け取った情報はありません。』というエラーになります。 どうすればいいか教えてください
- ベストアンサー
- オフィス系ソフト
- エクセルに外部データの取り込みができない
エクセルの外部データ取り込みで、アクセスで作ったクエリを取り込んでいましたが、取り込みができないクエリがあります。 クエリ名を変えても、取り込みできるクエリと同じように作っても、 取り込めません。 出来るクエリとできないクエリは何が違うのかわかりません… 何か理由があるのでしょうか?
- 締切済み
- オフィス系ソフト
- アクセスファイルの取り込み
Excel2000を使っています。 外部データの取り込み→新しいデータベースクエリで、データソースの選択からMs Access Datebaseを選び、アクセスファイルをエクセルに取り込みたいと思っています。 クエリウィザードで、最後に、「Excelにデータを返す」を選び、完了を押すと、「Queryの編集を続けますか?」とダイアログボックスが出ます。はいを押すとアクセスが立ち上がりますし、いいえを押すと、最後のExcelのどこにデータを返すのか問われるのがなくなり、結局取り込むことが出来なくなります。 2回目をすると、「Queryの編集を続けますか?」のダイアログボックスは出ません。 これはどういった時に出るものなんでしょうか?宜しくお願い致します。
- 締切済み
- オフィス系ソフト
お礼
回答ありがとうございます。 Excelに落として作業してみました。クエリーから直接落とすのでなく クエリーをテーブルに作成してみたらデータ更新できました。 やっぱり皆様に質問することはよいことですね。いろいろなアドバイスが もらえたりするので・・・Wendy02さんありがとうございました。