Access Runtime版のインストール

PCの入れ替えでAccessのRuntime版をインストールしようとすると
こんな警告が出ることがあります。

32ビットか64ビットの選択を間違えるとこのエラーが出てきます。

よくあるケースとしてはすでにofficeがインストールされていて、それが32だったり
64だったりします。

では32が入らなければ64が入るか?というと、今までの経験上両方入らないケースが
圧倒的に多いです。

その時の解決法としては今のところ二つです。

一つ目は製品版を購入することです。
お金はかかりますがこれが一番手堅いですね。

二つ目はAccessRuntime2010まで遡るかです。
だいぶ古いバージョンになりますが、2010なら何とかインストールできます。
お金をかけないケースではこれで処理しています。
まあ問題なく動きますし。
AccessRuntime2010も32と64を選びますが
十中八九32のデータ量が少ない方を選択します。

Accessは今まで2010の間では、2013、2016、2019、そしてoffice365のバージョンが
あります。お金をかけないとなるとやむを得ません。

できれば最初からサブスクのMicrosoft 365 Business Standardを入れるのが一番いいですね。

========================================
今年は寒い日が続きますね。
マラソンのトレーニングで朝走りますが、さすがに心折れそうです。。
春が待ち遠しいです。

本日も最後までお読みいただきありがとうございます。

Accessでやることリストを作る~機能の追加

やることリストに機能を追加します。
今仕事がどの段階にあるのか、分かるようにします。
①未着手
②仕掛
③終了
④最終チェック済
の4段階です。

そのために、テーブルにフィールドを追加します。

最終チェックと着手を追加します。

次にフォームを訂正します。コマンドボタンを図のように4つにして、先ほど追加した
最終チェックと着手を追加します。

こんな感じです。

あとは実際にコマンドボタンを押したときのコードを入力します。
いずれもコマンドボタンのクリック時です。

着手前

Private Sub 着手前_Click()
Me.Filter = “完了日 is null” & ” and ” & “最終チェック is null” & ” and ” & “着手 is null”
Me.FilterOn = True
End Sub
着手前は、完了日・最終チェック・着手に日付が入っていないレコードを抽出します。

仕掛

Private Sub 仕掛_Click()
Me.Filter = “完了日 is null” & ” and ” & “最終チェック is null” & ” and ” & “着手 is not null”
Me.FilterOn = True
End Sub
仕掛は着手に日付が入っていて、完了日と最終チェックに日付が入っていないレコードを抽出します。

確認

Private Sub 確認_Click()
Me.Filter = “完了日 is not null” & ” and ” & “最終チェック is null”
Me.FilterOn = True
End Sub
確認は完了日に日付が入っていて、最終チェックに日付が入っていないレコードを抽出します。

最終チェック
最終チェックは最終チェックに日付が入っているレコードを抽出します。

Private Sub 完了_Click()
Me.Filter = “最終チェック is not null”
Me.FilterOn = True
End Sub

ここまですると、社内で今仕事がどのように進んでいるのか分かるようになります。

=======================================
丁度娘が大学受験真っ最中です。なんとか併願が二つ合格し、あとは本命の国立を
受けるばかりとなりました。自分が子供の頃は親は何もしてくれなくて、ポケット地図を
もって、静岡から上京しました。

初めて渋谷にきて、地図見ても右も左も分からず、受験会場とは真逆にすすんでしまい、
途中で気づいて慌てて引き返したことを思い出します。

今はスマホもあるし、親が受験会場までついて行く世の中

本日も最後までお読みいただきありがとうございます。

明細に集計行を追加する②

下の図のようにフォームで入力した見積書を印刷します。

こんな感じで小計行を明細行の最後に付けます。

このやり方は、印刷用に別のテーブルを用意して、一度そちらに印刷する明細の
レコードをコピーします。
まずは最初にレコードをコピーするテーブルを作ります。

こんな感じで、明細テーブルをコピーして、テーブルの構造のみをコピーします。

次に印刷の指示をかけるたびに、印刷用のレコードをいったんすべて削除します。
その削除クエリを作ります。

クエリデザインの削除をクリックして、見積明細印刷用テーブルを選択し、全レコード「*」を
フィールドに設定します。

削除したら印刷したい明細をレコードに追加します。

追加したいレコードはフォームで表示されている見積書NOの見積明細です。
抽出する見積書NOは、抽出条件で

[forms]![見積書メイン]![見積書NO]

と指定します。

次に、小計を見積明細印刷用テーブルに追加します。
図のように追加クエリを設定します。

見積書NOについては、
式3: [Forms]![見積書メイン]![見積書NO]
と指定します。

この3つのクエリを実行すると見積明細に小計が表示されます。

印刷ボタンを押したときに、次のコードを追加します。
DoCmd.OpenQuery “Q見積明細印刷用削除”
DoCmd.OpenQuery “Q明細追加”
DoCmd.OpenQuery “見積印刷小計追加”
クエリを実行する順番は必ずこの順番で実行してください。

========================================
先日フルマラソンを2年ぶりに走ってきました。
結果は3時間11分42秒で自己ベストを21秒更新しました!
西風が常に強く吹く劣悪なコンディションでしたが、その状況での自己ベストは
自信になります。サブスリー目指してまだまだ頑張ります。

本日も最後までお読みいただきありがとうございます。

明細毎に原価と粗利を計算する②

明細毎に複数の原価を集計するために、まずはデータを入れるテーブルを作成します。

最初にメインフォームとなるテーブル。

とりあえず見積明細の見積明細NOが入れるだけです。

次に原価明細を入れるテーブル。

これは必要に応じて項目を作ってください。必要になるのはメインフォームと
サブフォームの関係にしたいので、見積明細NOは必須のフィールドです。

この二つのテーブルを基にフォームを二つ作り、原価明細の方をサブフォームで
とします。連結するのは見積明細NOです。

あとは見積書フォームを開いて、見積明細のコマンドボタンのプロパティの
イベントタブのクリック時に次のVBAコードを入れます。

Private Sub コマンド7_Click()
Me.Refresh
DoCmd.OpenForm “F見積接続”
Forms!F見積接続!見積明細NO = Forms!F見積書.F見積明細!見積明細ID
End Sub

コマンドボタンをクリックしたタイミングでT見積接続に現在参照している
見積明細NOがレコードとして入ります。

あとは明細をひたすら打っていきます。

とりあえずこれで見積明細とその原価明細が繋がりました。

========================================
人生初のダイエット(糖質制限)が3週間経ちました。
その間、米、パン、麺類はほぼほぼ食べず、主食は豆腐と化しました。
コンビニ行っても買えるものは、コーヒーとゆで卵とナッツだけ。。
世の中糖質で溢れてますね。というか糖質しかない!!
食事が面倒です泣

本日も最後までお読みいただきありがとうございます。

明細毎に原価と粗利を計算する①概要

見積書を作るときに、原価を計算するときがあると思います。

通常は見積金額と原価のレコードが1対1であれば、見積明細に「原価」というフィールドを
用意して、そこに金額を入れれば、差し引きで簡単に粗利が出てきます。

ただそれだと単純な取引なら問題ありませんが、見積金額と原価のレコードの比が1対多の
場合対応できません。

特に製造業や建設業、サービス業ではこういうケースが多いのではないでしょうか?

概要はこんな感じです。
一見通常の原価の金額です。

これは4つの原価明細の合計が見積の原価に反映しています。

こんな感じです。

原価用のテーブルを用意して、見積明細CDに対してサブフォームを開いてそこに原価の
明細を入れていき、その合計を見積明細に戻します。

これであれば、見積の段階で、ある程度の積算ができて、その明細履歴も残るので
その後の実際原価との比較も簡単にできます。

必要であればこの機能を見積明細作成システムに入れてみてください。
方法はこれから解説していきます。

=======================================
厚底シューズからうす底に戻してから、ふくらはぎの張がひどい。。
色々な方が言っていますが、厚底一辺倒は問題がありますね。
メディアがメーカーの言いなりになっているような気がして残念です。
練習はうす底シューズでないと本当の実力は付きません。。

レースだけ厚底履いても消費はあまり生まれませんからね。

本日も最後までお読みいただきありがとうございます。

AccessRuntime版のリンク先の更新

Accessを共有するとき、データベースの分割を使って、テーブルを切り離して使うことが
あります。

分割をする際に、テーブルだけとなったAccessファイルをどこに置くのか指定します。
そして常にその指定した場所にデータを見に行くので、万が一保存場所を変えてしまうと、データを
参照できなくなり、Accessファイルが使えなくなります。
続きを読む

電子書籍を出版しました!

電子書籍を出版しました。

以前出版したAccessクエリビジネス活用辞典が絶版になったので、ワードの原稿を焼き直し
ました。Accessクエリで仕事でよく使う項目をまとめました。
また経理業務のための Accessマクロで作るデータベース入門はこの書籍の項目を使って、データベースを組み立てています。
クエリについて細かく解説しておりますので、クエリっていまいちイメージしにくいとか
理解しにくいと感じている方にはお勧めです。

これは以前電子書籍として出版していましたが、経理業務のための Accessマクロで作るデータベース入門を出版
した関係で、内容がかぶる部分があると思い、販売を中止しました。

しかし
経理業務のための Accessマクロで作るデータベース入門はクエリとマクロでデータベースを
組んでいるのに対し、
Accessで経理実践編は、すべてAccessVBAで組んでいます。

クエリとマクロで作っても、VBAで作ってもできるデータベースに大きな違いはありません。
ただ、より使い勝手の良いデータベースの機能を作るには、やはりVBAの知識はあった方が
いいです。

クエリをある程度マスターして、VBAにもチャレンジしたいという方にお勧めです。

是非是非ご一読下さい。