メッセージボックスにキャンセルボタンを追加したい
VBAだと簡単に設定できるのですが あくまでマクロで設定したいとします。
普通にマクロの新規作成でメッセージボックスを設定すると
こんな感じで
↓実行時は こんなメッセージボックスが開きますが OKボタンしか無くて Escキーを押しても次の行以降(のクエリとか)が実行されてしまいます。
このメッセージボックスにキャンセルボタンを追加して 間違ってマクロを実行したときにエスケープ(キャンセル)できるようにしたいと思いまうす。
普通にマクロの新規作成でメッセージボックスを設定すると
こんな感じで
↓実行時は こんなメッセージボックスが開きますが OKボタンしか無くて Escキーを押しても次の行以降(のクエリとか)が実行されてしまいます。
このメッセージボックスにキャンセルボタンを追加して 間違ってマクロを実行したときにエスケープ(キャンセル)できるようにしたいと思いまうす。
コンボボックスの値をクエリの条件にして 次のコンボボックスにクエリ結果を表示
うーん タイトルって難しい・・・
1つ目のコンボボックスで指定した条件で 2つ目のコンボボックスの内容が変わってほしいのだ。
で 私は ツマヅイタ。
1つ目のコンボボックスで指定した条件を変更したのに 2つ目に表示されるのは変更前なのねぇ。
1つ目のコンボボックスの値を塗り替えたら2つ目も塗り替えられて欲しいのだ。
たとえば 利用者を登録しようとした場合で 日本各地(地区)に沢山の支店(拠点)があって登録するときに 地区を選んだら(1つ目のコンボボックス) その地区の支店だけを次のコンボボックス(2つ目のコンボボックス)に表示したいじゃーん。
だって日本中の数百(おおげさ)の支店名が ずらーーーとコンボボックスに表示されたら 選べない(面倒)。
つか コンボボックスの意味ないし(手入力した方が早いし)
でも2つ目のコンボボックスの支店名を選択したら、支店コードが隣のテキストボックスに自動で入ってほしいの。
数百(おおげさ)の支店コードなんて頭に入らないジャン。
そもそも覚える気もないけど・・・(←それが給与査定に反映)
コード表を探して手入力も面倒。(←面倒くさがり過ぎ)
こんなフォーム(<F_初期入力>と命名)があるとして 『地区』のコンボボックスで入力すると
次の『拠点』のコンボボックスには『地区』で入力された条件のデータが表示されて
『拠点』のコンボボックスを入力すると 隣の『拠点コード』が自動で入ってほしいの。
というか ちょっちビールをタシナミまして ぽやーんとしている中の更新です。
えーい いってまえ。(失礼な表現、言動 また分かりづらい点が多々あるかと思われますがご容赦ください)
1つ目のコンボボックスで指定した条件で 2つ目のコンボボックスの内容が変わってほしいのだ。
で 私は ツマヅイタ。
1つ目のコンボボックスで指定した条件を変更したのに 2つ目に表示されるのは変更前なのねぇ。
1つ目のコンボボックスの値を塗り替えたら2つ目も塗り替えられて欲しいのだ。
たとえば 利用者を登録しようとした場合で 日本各地(地区)に沢山の支店(拠点)があって登録するときに 地区を選んだら(1つ目のコンボボックス) その地区の支店だけを次のコンボボックス(2つ目のコンボボックス)に表示したいじゃーん。
だって日本中の数百(おおげさ)の支店名が ずらーーーとコンボボックスに表示されたら 選べない(面倒)。
つか コンボボックスの意味ないし(手入力した方が早いし)
でも2つ目のコンボボックスの支店名を選択したら、支店コードが隣のテキストボックスに自動で入ってほしいの。
数百(おおげさ)の支店コードなんて頭に入らないジャン。
そもそも覚える気もないけど・・・(←それが給与査定に反映)
コード表を探して手入力も面倒。(←面倒くさがり過ぎ)
こんなフォーム(<F_初期入力>と命名)があるとして 『地区』のコンボボックスで入力すると
次の『拠点』のコンボボックスには『地区』で入力された条件のデータが表示されて
『拠点』のコンボボックスを入力すると 隣の『拠点コード』が自動で入ってほしいの。
というか ちょっちビールをタシナミまして ぽやーんとしている中の更新です。
えーい いってまえ。(失礼な表現、言動 また分かりづらい点が多々あるかと思われますがご容赦ください)
経過時間を計算する FormatDateTime
母屋の方の記事で NHKの地震速報時間と民放の速報時間の差を出したのですが
どうやったの?との質問があったので こちらで・・・
テーブルはこんな感じ
項目の『時間』が速報時間で 項目の『NHK』がNHKの速報時間です。
NHKとの差: FormatDateTime([時間]-[NHK])
結果↓
どうやったの?との質問があったので こちらで・・・
テーブルはこんな感じ
項目の『時間』が速報時間で 項目の『NHK』がNHKの速報時間です。
NHKとの差: FormatDateTime([時間]-[NHK])
結果↓
TimeRound関数が使えない
会社のPCも私のPCもAccessのバージョンが古くて使えない関数が多いのです。
※自宅PCは会社のバージョンに極力あわせているので・・・
TimeRound関数もエラーになりますた。(号泣)
なので、時間を『時』と『分』に分解して 『分』を丸める計算をし 『時』と『丸めた分』を再合体させることにしました。
力技でねじ伏せるのだ。
たとえば AさんからUさんまでの時間があるとして その時間を10分で丸めたいとします。
◆10分未満は切り捨てて10分単位で表示したい。
時間から『時』を取り出す・・・時: Hour([時間])
時間から『分』を取り出す・・・分: Minute([時間])
『分』を10分で丸める・・・10分で丸め: Int([分]/10)*10
『時』と『10分で丸め』を再合体・・・再合体: TimeSerial([時],[10分で丸め],0)
↓結果
※自宅PCは会社のバージョンに極力あわせているので・・・
TimeRound関数もエラーになりますた。(号泣)
なので、時間を『時』と『分』に分解して 『分』を丸める計算をし 『時』と『丸めた分』を再合体させることにしました。
力技でねじ伏せるのだ。
たとえば AさんからUさんまでの時間があるとして その時間を10分で丸めたいとします。
◆10分未満は切り捨てて10分単位で表示したい。
時間から『時』を取り出す・・・時: Hour([時間])
時間から『分』を取り出す・・・分: Minute([時間])
『分』を10分で丸める・・・10分で丸め: Int([分]/10)*10
『時』と『10分で丸め』を再合体・・・再合体: TimeSerial([時],[10分で丸め],0)
↓結果