X



Access総合相談所 28
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@そうだ選挙にいこう
垢版 |
2018/08/30(木) 23:16:08.14
ACCESSに関する質問はこちらへ

▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★ OS、ACCESSのバージョンを明記してください。
★ 質問内容は具体的に書いてください。
  ・何がしたいのか
  ・どんな処理を試したか
  ・動作状況など駄目な理由
  テーブル/フォームの構成、クエリ、VBAの内容など差し支えない
 範囲で詳しく書くと、早く回答が得られるかもしれません。
  図解があれば尚良し。
  聞き返さなくても詳細が把握できる質問が望ましいです。
★ 事前にヘルプ・Google等で調べられる範囲は調べてください。
  大概の疑問は検索することで解決します。
★ アドバイスを貰ったら、必ず経過・結果の報告をして下さい。
  ギブアンドテイクで情報を共有しましょう。

▼━質問テンプレ ━━━━━━━━━━━━━━━━━
【 システム環境  】 Windows**, Access**
【 VBAが使えるか 】 はい・いいえ
【 VBAでの回答  】 可・否
【 検索キーワード 】 Googleやヘルプでの検索キーワード

前スレ
Access総合相談所 27
http://mevius.5ch.net/test/read.cgi/bsoft/1424828244/
0087名無しさん@そうだ選挙にいこう
垢版 |
2018/10/13(土) 20:39:49.48
Accessの有意義なメリットがクエリーを視覚的に作れる部分だから
FileMakerなんかSQL文をベタ書きして実行する仕組みしか無いのでデータ加工の面倒な事
個人的にはFileMakerがクエリーを視覚的に作れたら最強だと思うがライセンス料金高いクセに、そこがクソ
0088名無しさん@そうだ選挙にいこう
垢版 |
2018/10/13(土) 22:35:28.30
>>80
わけわかりません
0091名無しさん@そうだ選挙にいこう
垢版 |
2018/10/13(土) 23:50:02.46
>>88
ごめん、嘘こいた。
SELECT 名前,日付,昼飯
FROM テーブル1 INNER JOIN (
SELECT [テーブル1].名前 AS name2 ,Max([テーブル1].日付) AS 最新日付
FROM テーブル1
GROUP BY [テーブル1].名前) A ON テーブル1.日付=A.最新日付 AND テーブル1.名前=A.name2

これで合うか。
0093名無しさん@そうだ選挙にいこう
垢版 |
2018/10/14(日) 01:45:14.97
>>92 そうだね、最近サーバのビューやストアドに
長々手打ちするので、慣れてしまったけど、
もう少し前の自分なら 集計クエリーで一旦保存して
それを内部結合させる二段構えにするかな。
0094名無しさん@そうだ選挙にいこう
垢版 |
2018/10/14(日) 03:41:23.57
accessは今は全く使えません
もし私の希望の作動ができるのであれば、勉強したいと思います

PC内と当該フォルダ以下にある全動画ファイルのアドレスを取得し、
そのファイルを一つずつ順番に外部動画ソフト(MPC-BE)にコマンドライン付きで投げ、
MPC-BEが吐いた静止画ファイルを、その動画ファイルと関連付けしデータベース化

クエリで抽出したデータから、ファイルと関連付けされてる静止画をリスト表示
静止画をクリックすると関連付けされたファイルをMPC-BEに投げて再生する

やりたいことは動画ファイル管理ソフトの範疇なのですが、世にある動画ファイル管理ソフトがうまく使えなかったり、作動しなかったり、帯に短し〜だったりで
自分なりのものを作ろうと思うのですが、CやC#より、外部ソフト使ってこっちのほうが簡単かなぁ?と思うのです
コレができるなら、いろんな情報をデータベースに登録して、動画用鯖の使い勝手が凄く増すのですが、
こんな事は可能でしょうか?
0095名無しさん@そうだ選挙にいこう
垢版 |
2018/10/14(日) 14:27:24.09
>>94 可能。便利かどうかは定かではない。
データベースモデルとしては図書館の検索システムとか、マスコミ御用達と言われている大宅宗一文庫(雑誌図書館)のデータベース、オンライン画像検索サービス。
設計構造よりも引っ掛けるキーワードをいかに充実させるかにかかってるんじゃないかな。
0100名無しさん@そうだ選挙にいこう
垢版 |
2018/10/15(月) 13:43:27.39
>>98
お前さんはレコード修正、追加と
集計結果の編集レポートを同列で話してるので解答者とは話がかみ合わない
FORMでレコードメンテナンスするのと帳票はタイミング違うだろ
0101名無しさん@そうだ選挙にいこう
垢版 |
2018/10/15(月) 14:48:28.36
>>100
例えば勤怠記録をつけるとき
今日の分を入力するフォームに今月の労働時間など各種合計を表示させるのは非連結でやるんですか?
別途一覧表示などのレポートをつくるときがクエリなんでしょうか?

請求書の明細欄の合計なども非連結で
過去の請求書一覧を表示させるときなどに消費税や年間合計などを表示させるときにクエリなんでしょうか?
0102名無しさん@そうだ選挙にいこう
垢版 |
2018/10/15(月) 21:00:14.79
>>101
用途次第ですね。退勤記録を、あたかもタイムカードを見ているかのように
一人ずつ表示していきたい、なおかつ集計も見たいというなら、サブフォームのフッターに合計突っ込んで、親フォームでは、そのフッターを参照する式を書きます。(ここら辺、昔からACCESSの挙動が変なのでちょっとコツが入りますが)
請求は、参照閲覧用としては上に同じですが、締めという概念が入ってくるので、最終的にはいくら請求したかというテーブルが1個必要になって来ます。
0103名無しさん@そうだ選挙にいこう
垢版 |
2018/10/15(月) 21:20:23.90
>>102
退勤記録は
https://i.imgur.com/DBuPHIo.jpg
https://i.imgur.com/H8jxEhA.png
こういった感じで、月ごと日ごと従業員ごと、のような感じで表示させたいです
それぞれその日までの通算時間などを表示させて、です
このような場合はどのような設計がいいでしょうか?

請求書に関しては、売上テーブルから月末に対象となるものを駐出してそれを明細欄には表示させ
非連結で合計請求書や消費税を計算するつもりですが、まずいですか?
別途用意するテーブルとはどのようなものになるのでしょうか?
0104名無しさん@そうだ選挙にいこう
垢版 |
2018/10/16(火) 01:11:01.18
>>103 まず請求。普通の売り上げ管理システムには
締め作業があります。
この操作によって、伝票の修正禁止フラグを立てると同時に
締め期間ごとの合計金額と消費税計算が請求テーブルに
書きこまれます。「確かにこの金額請求しましたよ」の記録で、
その後の処理も作るとしたら回収管理につながります。
私もこの手のシステムの設計のお約束を全て知ってるわけ
じゃないけど、基本的にはこの手のシステムは「冗長的な記録」
(参照で済みそうなことの記録)をあえて行っている、と覚えてください。

次に退勤ですが、やれないことはないけど開発時間の浪費が
懸念されます。たとえば、マックス株式会社のタイムロボという
タイムレコーダーは10万円前後で、よくできた退勤管理ソフトも
ついてきます。
どうしても内製にこだわるなら、私ならEXCELにデータソースリンク
を作って、ピボットでクロス集計かける。
0105名無しさん@そうだ選挙にいこう
垢版 |
2018/10/16(火) 01:57:24.83
>>104
フラグで制御するよりテーブル分けろよ
締めた時点で帳票、集計画面用テーブル作れば良いだけ
リアルタイム操作用テーブルはFORMとペアで専用で用意
0106名無しさん@そうだ選挙にいこう
垢版 |
2018/10/16(火) 02:09:21.13
画像でいうところの請求金額や、各項目の数量×単価の金額のフィールドって非連結でやってたけどこれって間違い?
正しくはどうやればいいんでしょうか?
これは末締めじゃなくて直接入力みたいだけど
取引先と日付指定して該当のレコードを売上テーブルからひっぱってくるようなときの計算です
https://i.imgur.com/hx6I9f2.png
0109名無しさん@そうだ選挙にいこう
垢版 |
2018/10/16(火) 13:49:21.88
>>105
標準的な設計ってそっちだっけ?
売伝のコピー作るってことでしょ。

私はあまり責任の重くない買掛だけ作ったときに(仕入先の請求書のほうが基本的に正しいから)、月締め後は直接仕入れ伝票に「もう弄るな」フラグ仕込んでるけど。
0110名無しさん@そうだ選挙にいこう
垢版 |
2018/10/16(火) 18:22:52.74
>>108
絶対に小数点以下が出ないのであれば
非連結でもいいんじゃないかな。
世の中、単価1.2円みたいな業種もあるので、この時は丸め計算の結果は登録しておく。
あと、食い物取引の軽減税率対応のシステムは明細単位で消費税類計算するロジックを採用してるのが多い。

レコード登録のもう一つのメリットはsum(数×単価)を毎回かけなくていいこと。今時のpcで体感差は出ないが。
0112名無しさん@そうだ選挙にいこう
垢版 |
2018/10/18(木) 00:18:09.90
結局、末締請求書などをつくるシステムをつくるときは
全部クエリで計算してその結果をレポートに表示するようにしたほうがいいんですか? 

それとも請求書を確定させたタイミングで
別テーブルに合計金額などを格納するレコードを作成して
idで紐づけたほうがいいんでしょうか?
(各明細の単価×個数などは非連結として)

よくわからなくなりました
0114名無しさん@そうだ選挙にいこう
垢版 |
2018/10/18(木) 08:17:51.73
>>42
グラス片手にデータベース設計販売管理編とか読むといいかも
0115名無しさん@そうだ選挙にいこう
垢版 |
2018/10/18(木) 08:19:30.80
>>114
>>112
誤爆
0119名無しさん@そうだ選挙にいこう
垢版 |
2018/10/18(木) 22:07:21.44
>>118
ね。平易で読みやすい。
そのサイト知らなかった。見てみる。
0120名無しさん@そうだ選挙にいこう
垢版 |
2018/10/21(日) 20:26:37.42
ビジネスで優秀な人材育成する上司は何を教えているのか?
https://www.youtube.com/watch?v=apxtSqxjw08&;t=13s
マクドナルド伝説の店長が教える、最強店長になるために必要なこと
https://www.youtube.com/watch?v=0wMbR7JIeeQ&;t=3154s
「最強の働き方」長時間労働やノウハウよりも大切なこと
https://www.youtube.com/watch?v=JnMHbI1-e3E&;t=3606s
美容師の楽しさ再発見!やる気スイッチが入る働き方セミナー
https://www.youtube.com/watch?v=DGzXQT799oY
もうダメだ…仕事が辛い時に乗り切るための3つの思考
https://www.youtube.com/watch?v=VEPf8viBpRU
視覚障がいを乗り越えた活法家
https://www.youtube.com/watch?v=6IuY_K3uFdo&;t=805s
0121名無しさん@そうだ選挙にいこう
垢版 |
2018/10/23(火) 19:18:59.15
accdbを複数ユーザーで共有して使っています
フォームとデータを分離する必要性を全く感じません
ベンダってのはバカばかりなのでしょうか?
0122名無しさん@そうだ選挙にいこう
垢版 |
2018/10/23(火) 21:31:21.29
>>121
釣りですか。まあ、お好きにしてください。
なぜベンダー?ベンダーがACCESSで納品するのってレアケースですよ。
NASとかに置いて各PCから多重に開くことができる、割と珍しい作り
なので運用局面では支障がないかもしれません。
ただ、ちょっとフォームやレポートのここを直したいな、レポート
追加したいなって時に「はーい、全員閉じてー」って言わないと
保存できなかったはず。
0125名無しさん@そうだ選挙にいこう
垢版 |
2018/10/24(水) 05:59:13.65
SQL Serverだとサーバー買う必要があるな
パソコンで良い案件だと尚更SQL Server不要
ExpressでいけるならAccessランタイム配布で足りる
0127名無しさん@そうだ選挙にいこう
垢版 |
2018/10/24(水) 15:45:28.95
MariaDB or PostgreSQLに
フロントエンドがOpenOffice Base

が無料で構築出来るけどね

OpenOfficeで使ってるJava部分をOpenJDKでカバーする必要有るけど
(32bit版限定、半年毎に大幅修正)

フロントエンドをAccess、FileMaker、Baseどれを選ぶかは状況次第だがFileMakerはiOSデバイスとの拡張がメリットの割にライセンス料金高い
0129名無しさん@そうだ選挙にいこう
垢版 |
2018/10/24(水) 17:12:49.76
>>128
使い道や頻度による。
検索メインで入力が1人か2人なら、もっと大人数でも大丈夫だし、
全員で毎日数十件の入力をするなら、バックエンドDBが必要だと思う。
0131名無しさん@そうだ選挙にいこう
垢版 |
2018/10/24(水) 18:11:11.59
環境: windows10、access2013

テーブルに格納されている「長いテキスト型」のデータをフォーム上のテキストボックスに連結して表示させると文字化けしてしまうのですが考えられる要因は何かありますか?
0137名無しさん@そうだ選挙にいこう
垢版 |
2018/10/25(木) 00:36:56.97
>>135 困ったことにMSってクライアントwindowsだろうが
windowsサーバーだろうが、システム的に全くCALをチェック
しないんだよね。サーバーOS+10CALで25万円弱、に
理解を示せる社長さんかどうか。
(業務用アプリにACCESS開発を試みてる時点で事業規模は
大きくないはず)
いっそ、linuxにしてしまうという選択肢もなくはない。
多少なりともGUIでできる幅が広がってるので。
0138名無しさん@そうだ選挙にいこう
垢版 |
2018/10/25(木) 05:06:24.33
デスクトップPCにLinux入れてポスグレとかMySQL入れるの?
オペレーションは電源切るくらいならGUIあればできるだろ、と

MSのライセンス的によくわからんのが、クライアントWindowsのHyper-VにサーバOS載っけて運用できるのかってことだか
0139名無しさん@そうだ選挙にいこう
垢版 |
2018/10/25(木) 05:11:54.41
やるなら、Linux上のOracleXEにクライアントAccessでやりたいな
Oracle+AccessなんてちょっといいじゃないかVBの時代を思い出して
0145名無しさん@そうだ選挙にいこう
垢版 |
2018/10/25(木) 12:07:45.74
まあ古いWindowsPCにUbuntu入れてMariaDB,PostgreSQL入れればデータベースサーバーになる
Linux distribution個々のライセンスの問題有るが、Windows CAL回避するにはこういう方法になる
0146名無しさん@そうだ選挙にいこう
垢版 |
2018/10/25(木) 13:49:08.86
>>141
webプログラミングでしょ。ちょっとやってみたけど、なにせvbaの頭でやってるとjava系言語は難しい。
全部クラス呼び出し、非同期処理その他諸々、画面作るのににマウスの出番が一切ない、などやるべきことが多すぎる。
かといってkintoneのようなお手軽webDBも取っつきにくい。
0147名無しさん@そうだ選挙にいこう
垢版 |
2018/10/25(木) 13:54:24.59
>>143
断片化とは具体的にどういう症状でしょうか。
壊れたから開けねー、みたいなアラートが出たら「最適化」は修復を兼ねてるので、直ります。
ただし、壊れたやつは普通にデータ飛んでることもあります。親子関係結んだ親テーブルのレコードが飛んでるとか。
0148名無しさん@そうだ選挙にいこう
垢版 |
2018/10/25(木) 17:27:25.38
>>146
高度なことやらないならVBの生産性はまだまだ現役ってとこですかね、スレ的にも

そんな方のためのASP.netのWebフォームは滅亡してしまったし、
抽象化とかイミフなおっさんプログラマー達には厳しい

ExcelもこれからはPythonで制御するとかって方向性もあるし
0149名無しさん@そうだ選挙にいこう
垢版 |
2018/10/27(土) 20:38:23.99
AccessなんてVBに帳票出力機構とFORM生成機構追加したモノ、と考えれば良い
DBの代わり、にはならない
フロントエンドツール
バックエンドDBは別途、無料のモノ用意する
サーバーすらLinux、MacOSにすればCALなんて不要
(クライアントOSライセンスは仕方ない)
0151名無しさん@そうだ選挙にいこう
垢版 |
2018/10/28(日) 02:13:04.91
>>150 クライアントアクセスライセンス。
スレチだけど、windows serverは1ハードウェアサーバーに
1つの役割しかさせないというのが常識だそうで
sqlserver用に1台、認証サーバー(ActiveDirectory)に1台
共有フォルダ用に1台って、なんでユーザーのログイン管理の
ためだけに
10人分で50万円近い金はらわなきゃならんのか、いまだに
納得いかない。
0154名無しさん@そうだ選挙にいこう
垢版 |
2018/10/28(日) 20:51:41.52
1つのサーバーに複数の役割を持たせるのは別にライセンス違反ではないでしょ
それでサポート受けられなくなるとかあるの?
0156名無しさん@そうだ選挙にいこう
垢版 |
2018/10/29(月) 20:59:22.93
Accessって、バックエンドのDBをリンクテーブルから直接更新するとおかしくなるよね
DB更新にもウエイトとか入れないとダメなのか?
そんなシステムじゃクラサバで使えないと思うんだが
0157名無しさん@そうだ選挙にいこう
垢版 |
2018/10/29(月) 21:08:36.09
>>156
>>Accessって、バックエンドのDBをリンクテーブルから直接更新するとおかしくなるよね

昔からね
リンクテーブルに更新かけるのは基本的にしない様にしてる
ODBC経由で更新かけると大概タイムアウトくらう
0159名無しさん@そうだ選挙にいこう
垢版 |
2018/10/30(火) 00:42:44.96
>>156 やっぱりおたくも調子悪い?
2人くらいまでの同時更新なら壊れないんだけど
3人くらいになるともうだめ。
壊れにくい方法としては、オートナンバーやめて
インクリメントの覚書きテーブルから払い出させる方法。
最終的にはDBサーバー使う方が確実だったりする。
0160名無しさん@そうだ選挙にいこう
垢版 |
2018/10/30(火) 18:47:05.07
SQL Serverにリンクテーブルでつなげて更新してるけど特におかしくなったりはしないな
それじゃ遅くて仕方ないって場合はADOでT-SQL投げてるけど
0164名無しさん@そうだ選挙にいこう
垢版 |
2018/10/31(水) 12:18:03.79
【 システム環境  】 Windows7, Access2016
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 テーブル、クエリ、違いetc

初学者です。
テーブルは基本的な情報、クエリはwhere句やjoinなどなんらかデータを加工したものという認識ですが
クエリ→デザイン→テーブルの作成の意味が良くわかりません。
テーブルから抽出したデータをクリエと呼ばずテーブルに定義するのはなんかおかしいと感じるのですが
どう考えたらいいのでしょうか?
0167名無しさん@そうだ選挙にいこう
垢版 |
2018/10/31(水) 19:36:24.78
Access使うならテーブルとクエリーの違い分かって無いと何とも
クエリー使いこなすのがAccessのキモだからな
VBAはどうしてもクエリーで対処出来ない場合やマクロで対処出来ない場合のみ使う
何でもかんでもVBAとかで対処したがるVBプログラマーの作ったAccessなんか仕様変更した場合メンテナンス出来ずに死ぬ
0168名無しさん@そうだ選挙にいこう
垢版 |
2018/10/31(水) 20:12:01.68
>>164
その認識で正しいし、ACCESS内でもクエリーはクエリーで
テーブルと呼ぶことはありませんが。
クエリーを擬似テーブルとして、違うクエリーで再利用することはできます。

もしくは「テーブル作成クエリー」のことですか。
あれは、クエリーの結果をテーブルに書き出すもので、
SQLで表現すると「SELECT * INTO ナンチャラ FROM ナンチャラ WHERE ナンチャラ」です。
違うことが聞きたいのであれば、少し表現を変えてみてください。
0169名無しさん@そうだ選挙にいこう
垢版 |
2018/10/31(水) 21:28:14.25
>>168
下段のほうです。アクションクリエのテーブル作成クリエって言うのがいまいち使いどころというか存在意義が良くわからなくて。
でも、>>166さんの書き込みも踏まえて考えると別のデータベースに移すとき実体データを整えるのに使うのかなと思ったり。
よくわかりませんが。
0171名無しさん@そうだ選挙にいこう
垢版 |
2018/10/31(水) 21:33:34.49
>>テーブル作成クエリー
中間テーブル作成
クエリーにクエリーを使うより確実だから中間テーブルを作ったりする
データ抽出結果も確認出来る
0172名無しさん@そうだ選挙にいこう
垢版 |
2018/10/31(水) 22:53:42.30
中間テーブル・・・はじめて聞く言葉ですがなんとなく解ってきました。
ビューみたいなものととらえれば大丈夫ですか?
違ってたらすみません。
0175名無しさん@そうだ選挙にいこう
垢版 |
2018/11/01(木) 14:54:38.60
>>172
ビュー=(普通の)クエリーです。
中間テーブルは、SQLSERVERでいうところの一時テーブル(#TABLE)
です。ただし、ACCESSではライフタイムがないので、そのまま残ります。
一時テーブルの使い道は色々あります。レポートの呼び出しの時に
先に対象レコードを1個だけに絞っておきたいときとか、
前後のクエリーがくどい記述になる時とか、
VPN経由で回線が細い場合にレコード1個分だけ引っ張って
ワークテーブルとして利用するなど。
0176名無しさん@そうだ選挙にいこう
垢版 |
2018/11/01(木) 15:26:25.15
中間テーブルとクエリーをどう活用するか
がAccessのキモ
FileMakerにはAccessのクエリーに相当するモノが無い
SELECT文をスクリプトとして実行するか、テーブルオカレンスを使う
帳票ツールとして見た場合、Accessの方が安くて応用が効く
FileMakerはデータ保持容量の大きさとクエリー、VBAを使いこなせ無い人向けのDB(WebやiOSデバイスとの連携もメリット有るが)
何にせよFileMakerのライセンス料金の高さは中小企業には厳しいレベル
0178名無しさん@そうだ選挙にいこう
垢版 |
2018/11/01(木) 23:56:06.02
中小企業でFileMaker使ってる所は今後厳しいだろうね
ランニングコスト考えたらMariaDBやPostgreSQLとAccessの組み合わせの方に分が有る
OpenOffice BASEも有るし
iOSデバイス使ってないならFileMaker使うアドバンスは無い
0180名無しさん@そうだ選挙にいこう
垢版 |
2018/11/03(土) 15:52:36.68
いろいろレスありがとうございます
ビュー=クリエは目からうろこでした
レスを元にいろいろ調べながら考えてみましたが中間テーブルを作るということはクエリと違ってSQL文を実行する手間が省けるわけでデータが大きくなるのに比例して演算時間の短縮効果が大きくなるのかなと思いました。
0186名無しさん@そうだ選挙にいこう
垢版 |
2018/11/09(金) 18:55:22.48
質問です。
AccessでUnicode文字を扱うにはどうしたらよいのでしょうか?
立方メートルの記号である㎥など、Unicode文字を扱いたいのですが、イミディエイトウインドウでもメッセージボックスでも ? になってしまいます。
イミディエイトウインドウで ?MsgBox(ChrW(&H33A5)) とやっても同様です。
何か方法があるのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況