本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
Accessフォームでラジオボタンを作成
コンボボックスからクエリに反映させる事はよくやっていたのですが、ラジオボタンを利用したことはありませんでした。この際と思って勉強してみました。
Accessコントロールから、オプショングループを配置する
Accessコントロールから、ラジオボタンを配置する
ラジオボタンを配置する際、オプショングループの中にコントロールをポイントするとオプショングループ自体が黒くなります。この時にこのオプショングループに入るというこ事が分かります。
ラジオボタンのオプション値
ラジオボタンをクリックします
プロパティ―シートを確認するとオプション値が出てきます。
クエリへの反映
クエリの条件として、そのオプション値がそのまま利用できます。
[Forms]![フォーム名]![OP_mode]
これで無事にクエリが実行されます。
マクロからエクスポートできない
がーん
なぜか分かりませんが、クエリを右クリックしてエクスポートする際に、オプション設定をしないと、
「パラメータが少なすぎます。1を指定してください。」とよくわけのわからないエラーが出ます。クエリで条件指定した[Forms]![フォーム名]![OP_mode]を消すとエクスポートできるようになる事から、クエリをエクスポートする際の条件式にこの[Forms]指定はできないようです。
CSV出力VBA
仕方がないので自作でCSV出力用のサブルーチンを作成しました。
Public Sub Pub_CsvOut2DeskTop(TargetTable As String, FileName As String) 'デスクトップパス取得 Dim MyWSH As Object Set MyWSH = CreateObject("WScript.Shell") Dim myDeskTopPath As String myDeskTopPath = MyWSH.SpecialFolders("Desktop") Set MyWSH = Nothing DoCmd.TransferText acExportDelim, , TargetTable, myDeskTopPath & "\" & FileName MsgBox ("デスクトップに" & vbCrLf & FileName & vbCrLf & "を作成しました。") End Sub
CSV出力使い方
Call CsvOut2DeskTop(“クエリ名”,”ファイル名”)
でデスクトップにクエリをCSVでエクスポートできるようになります。
オプションボタンによりファイル名を変更したい
押されているオプションボタンにより、ファイル名を変更してCSVファイルを出力したいです。
こんな感じで今後ロールopt+オプション値のタグを引っ張ってくることができます。
MsgBox Me("opt" & Me!OP_mode.Value).Tag
オプションの名前は opt0 といった形で、この0の部分はオプション値と同じものにしておきます。
こちらのサイトが大変参考になりました。
結局このような形で、オプションボタンに伴ってファイル名を変更してCSVファイルが吐き出せるようになりました。
Private Sub コマンド10_Click() Call Pub_CsvOut2DeskTop("Q_クエリ名", Format(Date, "yyyymmdd") & "一覧" & Me("opt" & Me!OP_mode.Value).Tag & ".csv") End Sub
オプショングループの既定値
オプショングループ内のいずれかのボタンを開いた時にクリックした状態、初期値を作りたい時に設定する方法です。
グループの既定値にオプションボタンに設定したオプション値を設定します。すると、フォームを開いた時にその値がチェックされた状態で開きます。