- ベストアンサー
Access マクロビルダーで使うIF文について
- Access2010のマクロビルダーを使ってリストから選択した項目に応じてクエリをExcel出力する方法について解説します。
- 具体的な手順として、まずフォーム内のリストから項目を選択し、その後マクロ実行ボタンをクリックします。
- リストで選択した項目に応じて、「クエリ1」または「クエリ2」がExcel形式で出力されます。しかし、実行時に「エラー13 型が一致しません」というエラーが発生してしまっています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
回答者1です。 フォーム内にリストを設置して リストの プロパティシートで、 値集合ソースは、1;2 値集合タイプは、値リスト で、リストを選択してマクロが問題なく動きました。 リストの 値項目 "1","2" の意味がよくわかりません。 項目を増やさずに、 値集合ソースのみ設定すれば良いのではないでしょうか。
その他の回答 (2)
- nicotinism
- ベストアンサー率70% (1019/1452)
リストボックスコントロールのプロパティの「その他」タブ中の 複数選択→しない にしたらどうなりますか? 最終的に10個くらいになるのなら、 Select Case やFor Next が使えるVBAの方が良さそうにも思えます。
- last_shishi
- ベストアンサー率56% (54/96)
データ型のエラーという質問の回答ではありませんが、 フォームでマクロを使って、複数のリストをエクセル形式でエクスポート表示したいということですよね。 フォーム内にコマンドボタンを複数作られてはどうでしょうか。 コマンドボタン1に 書式設定を保持したままエクスポート オブジェクトの種類 クエリ オブジェクト名 クエリ1 出力ファイル形式 エクセルブック(*.xlsx) 自動起動 いいえ 出力品質 画面 コマンドボタン2に 書式設定を保持したままエクスポート オブジェクトの種類 クエリ オブジェクト名 クエリ2 出力ファイル形式 エクセルブック(*.xlsx) 自動起動 いいえ 出力品質 画面 として、2つのボタンを作れば、IF文を使う必要はないのではないでしょうか
補足
早速のご回答ありがとうございます! 実行させたいクエリごとに、 ボタンを複数用意するんですね。 今回は2つのクエリしか出していませんが、 今後は「10種類のクエリを選択して出力」を考えているため、 フォーム内にあまり実行ボタンが増えるのは避けたいな、と思っています・・・。 せっかく案をいただいたのに、すいません。 このまま行き詰まるようだったら、回答者様の案を使わせていただきたいと思います。
お礼
> 値項目 "1","2" リストの項目追加画面で、1、2と入力したら、このような表示になっていました。 数値とテキストを混ぜて入力していたようで、 回答者様のを、そのままコピペしたところ問題なく動きました。 拙すぎるミスで、お恥ずかしいかぎりです。 この度は大変お手数をおかけしまして、すいませんでした。