Access総合相談所 24

このエントリーをはてなブックマークに追加
1名無しさん@そうだ選挙にいこう
ACCESSに関する質問はこちらへ

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

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

前スレ
Access総合相談所 其の23
http://pc11.2ch.net/test/read.cgi/bsoft/1265710293/
2名無しさん@そうだ選挙にいこう:2010/10/17(日) 07:33:51
ACCESS2000総合相談所
http://pc.2ch.net/bsoft/kako/965/965614164.html
ACCESS総合相談所 その2
http://pc.2ch.net/bsoft/kako/1007/10079/1007987001.html
ACCESS総合相談所 その3
http://pc.2ch.net/bsoft/kako/1019/10190/1019087338.html
ACCESS総合相談所 その4
http://pc.2ch.net/bsoft/kako/1027/10274/1027491281.html
ACCESS総合相談所 その5
http://pc.2ch.net/bsoft/kako/1033/10331/1033182163.html
ACCESS総合相談所 その6
http://pc2.2ch.net/bsoft/kako/1037/10378/1037856185.html
ACCESS総合相談所 その7
http://pc2.2ch.net/bsoft/kako/1043/10439/1043996834.html
ACCESS総合相談所 その8(消息不明です)
http://pc2.2ch.net/bsoft/kako/1051/10516/1051630268.html
ACCESS総合相談所 その9(消息不明です)
http://pc2.2ch.net/test/read.cgi/bsoft/1061828549
ACCESS総合相談所 その10
http://pc5.2ch.net/test/read.cgi/bsoft/1075378966/
ACCESS総合相談所 その11
http://pc5.2ch.net/test/read.cgi/bsoft/1089812359/
ACCESS総合相談所 その12
http://pc8.2ch.net/test/read.cgi/bsoft/1106963038/
ACCESS総合相談所 その13 【桐にしとけ】
http://pc8.2ch.net/test/read.cgi/bsoft/1121055646/
ACCESS総合相談所 その14 【桐にしとけ】
http://pc8.2ch.net/test/read.cgi/bsoft/1128486351/
ACCESS総合相談所 その15
http://pc8.2ch.net/test/read.cgi/bsoft/1142586697/
ACCESS総合相談所 その16 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1157195290/
3名無しさん@そうだ選挙にいこう:2010/10/17(日) 07:36:03
ACCESS総合相談所 その17 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1175943813/
ACCESS総合相談所 その18 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1198885955/
Access総合相談所 其の19 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1216293538/
Access総合相談所 其の20 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1230971374/
Access総合相談所 其の20 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1230971374/
Access総合相談所 其の21 【桐にしとけ】
http://pc11.2ch.net/test/read.cgi/bsoft/1240392946/
Access総合相談所 其の22
http://pc11.2ch.net/test/read.cgi/bsoft/1251297578/
4名無しさん@そうだ選挙にいこう:2010/10/19(火) 11:01:19
自分乙
5名無しさん@そうだ選挙にいこう:2010/10/19(火) 19:02:16
>1乙です

ACCESS2007のVBAでドキュメントのパスを取得方法を教えてください。
OSは「XP」と「VISTA」と「WINDOWS7」でです。

例えばXPなら
C:\Documents and Settings\ユーザー名\My Documents\
VISTAなら
C:\Users\ユーザー名\Documents\
(WINDOWS7は今持ってないのでどういうファイル構造なのかわかりません)

で、ユーザー名はEnviron("USERNAME")で取得すればいいと思います。

ここでわからないのがOSの種類によって変わらないといけないところで
そこでOSの種類を取得する方法はありますでしょうか?

それとも、もっといい「ドキュメントのパスの取得」する別の方法はあるでしょうか?
よろしくお願い致します。
6名無しさん@そうだ選挙にいこう:2010/10/19(火) 20:09:23
>>5
WScript.ShellオブジェクトのSpecialFoldersでいいんじゃね?

>>1

7名無しさん@そうだ選挙にいこう:2010/10/19(火) 20:15:41
>>6
ご回答ありがとうございます。
そこらへん使ったことないんですけど
調べてやってみます。
8名無しさん@そうだ選挙にいこう:2010/10/19(火) 22:06:27
>>6
できました。ありがとうございました。
9名無しさん@そうだ選挙にいこう:2010/10/21(木) 15:17:39
ある顧客管理ソフトのデータを、新しいバージョン用に変えて、移転させたいのですが
サポートセンターに問い合わせたところ

Access2007で昔のデータ(mdb形式)を開き、すぐに新規保存(accdb形式)して、新しいパソコンに移せ
っと言われました。

ところが、Access2003はあっても、Access2007を持っていないのです。

何か方法はないでしょうか? 教えていただけると助かります。宜しくお願いします。
10名無しさん@そうだ選挙にいこう:2010/10/21(木) 17:28:28
>>9
Access2010でも出来ますので、購入してください
体験版でもOK
11名無しさん@そうだ選挙にいこう:2010/10/21(木) 17:28:54
フォームをサイズ変更した時に、コントロールのサイズも自動的に変更(ストレッチ)してくれる
なーんて便利な機能なんてない・・・ですよね?
12名無しさん@そうだ選挙にいこう:2010/10/21(木) 17:32:35
>>11
はい、ありません
13名無しさん@そうだ選挙にいこう:2010/10/21(木) 17:37:04
>>12
ありがd
ちなみに自力でなら各コントロールのサイズを変更することはできたりしますか?
14名無しさん@そうだ選挙にいこう:2010/10/21(木) 17:50:50
>>13
はい、自分でサイズを定めるのが普通です

フォームサイズ変更にコントロール位置は追随させれます
アンカー機能といって、左上とか下とかフォーム内の相対的上下左右位置を指定します
15名無しさん@そうだ選挙にいこう:2010/10/21(木) 18:59:07
>>14
自力でならできるのですね!
どんなキーワードで調べたら良いか、ヒントを頂けないでしょうか?
「アンカー機能」 では見つからなかったもので・・・
16名無しさん@そうだ選挙にいこう:2010/10/21(木) 19:09:14
>>15
HorizontalAnchor プロパティ
VerticalAnchor プロパティ
17名無しさん@そうだ選挙にいこう:2010/10/21(木) 19:18:54
>>16
もしかしてAccess2003じゃ使えなかったりします?
18名無しさん@そうだ選挙にいこう:2010/10/21(木) 19:39:26
>>17
2007から
19名無しさん@そうだ選挙にいこう:2010/10/21(木) 19:39:44
>>18
どもです
20名無しさん@そうだ選挙にいこう:2010/10/21(木) 20:36:33
2010ってどうなの?
21名無しさん@そうだ選挙にいこう:2010/10/21(木) 22:59:28
No、氏名、住所からなるテーブルがあり
これを元に表形式のフォームを作成して
検索ウインドウとしてヘッダーにテキストボックスコントロールとボタンを用意してます。
(テキストボックスの名前はtxt氏名)

ボタンのクリック時のイベントプロシージャに以下のように記載してます。

dim strA as string

strA = me.txt氏名.value

me.filter = "氏名=strA"

テキストボックスtxt氏名に入力した文字列と一致するもので
フィルターされると思ったのですが
なぜかパラメータ入力ウインドウが立ち上がり
そこに入力するとフィルタがかかります。
これはなぜなのでしょうか?



22名無しさん@そうだ選挙にいこう:2010/10/21(木) 23:09:54
"氏名='" & strA &"'" でどう?
23名無しさん@そうだ選挙にいこう:2010/10/22(金) 13:08:08
クエリで、未定義の関数があります、みたいなメッセージが出た。
どうしたらいいですか?
普通のreplace関数なんだけど。
どなたか急ぎで教えていただけますか?
24名無しさん@そうだ選挙にいこう:2010/10/22(金) 13:10:55
昔のAccessではクリエでreplace関数使えない、Access2010にしてください
25名無しさん@そうだ選挙にいこう:2010/10/22(金) 13:18:39
今までもリプレイス関数使えてたと思ったけど、2000とかのバージョンでは無理なんですね。
知りませんでした。ありがとうございます。

文字置き換えで、リプレイス以外の関数ってありますか?
よろしければ教えてください。
269:2010/10/22(金) 13:39:40
>10様
レスありがとうございます!!

あと、オフィス2010の体験版をインストールすると
今まで入っていた2003や2007が上書きされたり、何か今までの動作に異常等は出てしまいますか?

体験版を入れて試したいものの、他の仕事でWORD・EXCELを使っていて、そちらに何か変更が出ると困るもので・・・

教えていただけると助かります。よろしくお願い致します。
27名無しさん@そうだ選挙にいこう:2010/10/22(金) 13:43:01
>>26
インストールのウィザードの中で、旧バージョン残すオプションやAccessだけ選んでインストールしたり出来る
28名無しさん@そうだ選挙にいこう:2010/10/22(金) 21:52:49
2010になってかなり良くなったが、印刷があるなら桐のが良いなぁ。
29名無しさん@そうだ選挙にいこう:2010/10/23(土) 07:16:57
桐ってVBAみたいな言語とか、ODBCドライバとかあるの?
30名無しさん@そうだ選挙にいこう:2010/10/23(土) 08:56:40
桐の一括処理はAccessのマクロよりも強力、ODBCドライバはない、ODBC機能はあるのでフロントエンドには使える
31名無しさん@そうだ選挙にいこう:2010/10/23(土) 19:07:48
32名無しさん@そうだ選挙にいこう:2010/10/24(日) 15:25:02
>>31
ありがとうございます。参考にさせていただきます。
33名無しさん@そうだ選挙にいこう:2010/10/25(月) 00:21:07
検索ボックスを作り
その値を変数にいれてフィルターなどで
レコード抽出しようとおもったのですが
ワイルドカードの使用がうまくいきません。
変数にワイルドカードを組み合わせることはできないのでしょうか?
34名無しさん@そうだ選挙にいこう:2010/10/25(月) 09:00:58
>>33
できます。
具体的なコードを書かないとどうすればいいかっていうレスはつかないと思うよ
35名無しさん@そうだ選挙にいこう:2010/10/25(月) 17:11:44
昔ACCESS2002で作られたシステムをVISTA及びWINDOWS7のPCで動かさない
といけなくなったのでOSがXPSP3でACCESS2007が入っているPCで
accdb形式に変換したものをVISTA+ACCESS2010のPCにもって行って動かしました。
このシステムはVBAで管理ファイルを自動的に書き出すているのですが、
例えばドキュメントフォルダに書き出す様に設定しても次の通知がでます。

セキュリティに影響を及ぼす可能性のある問題点が検知されました。
警告:このコンテンツの発行元が信頼できるかどうかを確認することは
できません。このコンテンツが重要な機能を備えており、発行元が信頼できる
場合を除き、このコンテンツは無効のままにしてください。
ファイルのパス:C:users¥・・・・・・・・
このファイルにはお使いのコンピューターに損害を与える危険なコンテンツが
含まれている可能性があります。このファイルを開きますか、それとも操作を
取り消しますか?
[開く]  [キャンセル]

(続く)


36名無しさん@そうだ選挙にいこう:2010/10/25(月) 17:20:58
>>35の続き
これは管理ファイルが書き出されるタイミングででていると思われるのですが、書き込みなのに
なんで「開く」と出るのかよくわからないのですが、何しろここで[開く]を選択するとまた同じ表示が出て
それを3回くらい繰り返すとその管理ファイルが書き込まれます。

ここで、ACCESS2010でファイルのパス:C:users¥ユーザー名¥・・・・・・・・のフォルダを「信頼できる場所」に
登録すると、>>35の通知はでなくなります。

最終的にはVISTA及びWINDOWS7のPCでACCESS2010のランタイムルーチンしか入ってない
PCでこれを動かしたいのですが、ランタイムルーチンだけしか入っていないPCで「信頼できる場所」の設定
はできませんよね。こういう場合、通知を出さなくするにはどうすればよろしいのでしょうか。
よろしくお願い致します。
37名無しさん@そうだ選挙にいこう:2010/10/25(月) 20:15:00
>>35
うんにゃ、できるよ。
レジストリに書き込めばいいだけよ。独自にインストーラ作るんでもウィザード使うにしてもアプリ初回実行時にしても。
a2010runtime使うんだったら、a2010製品での動作確認は忘れずにな。
38名無しさん@そうだ選挙にいこう:2010/10/25(月) 20:29:56
>>37
>a2010製品での動作確認は忘れずにな。
ありがとうございます。
やはりVBAでエラーがでるところがあり、直しました。

>レジストリに書き込めばいいだけよ。独自にインストーラ作るんでもウィザード使うにしてもアプリ初回実行時にしても。
それをヒントに調べてやってみます。

ありがとうございました。

39名無しさん@そうだ選挙にいこう:2010/10/27(水) 17:07:14
>>38ですが
その後regeditで手動で「信頼できる場所」をレジストリ登録する方法はわかりました。
これを自動化するにはどうしたらいいんでしょうか?
Accessをパッケージ化したものと合わせて配布してPCに詳しくい利用者も自分で
インストールできるようにしたいのです。

ニーズがありそうな話なので、もうツールかVBの雛形の様なものが
作られて公開されていると思いました。甘かったです。
40名無しさん@そうだ選挙にいこう:2010/10/27(水) 23:46:30
>ニーズがありそうな話なので、もうツールかVBの雛形の様なものが
>作られて公開されていると思いました。甘かったです。
なーに言ってるさ。a2010/2007にツールあるっぺよ。
パッケージソリューションウィザードでだめなん?
41名無しさん@そうだ選挙にいこう:2010/10/28(木) 12:11:56
Access2003です。

フォームの中にサブフォームを2つ設置してへダーと明細としての役割を持たせてます。
ヘダーとしてのサブフォーム中のデータをクリックしたら、そのデータを基に明細として使用している
サブフォームにフィルターをかけたいのですが、サブフォームから別サブフォームへのデータの受け渡しは
どうすればいいのでしょうか。
42名無しさん@そうだ選挙にいこう:2010/10/28(木) 15:35:28
>>40
言われて「ハッ」として、ACCESS2010のパッケージウィザードから発行されるaccdrファイルの場所と
運用中に吐出される管理データの場所を同じ(同じフォルダ)になるようにしました。
そうしたら通知はでなくなりました。これでOK・・・と思ったのですが、この時よく見たら
今まで2007ランタイムでテストしていて、2010ランタイムでやるように言われたのを思い出して
今度は同じ設定でランタイムをランタイムだけを2010に変えたものを発行してテストPC
(2007ランタイムはアンインストールしたPC)にインストしました。
そうしたら今度はaccdrファイル開く時にも毎回通知がでるようになってしまいました。
>>35の段階で出ていた通知も出ます。)

次に2010ランタイムをアンインストールして2007ランタイムをインストールしたら
また通知が一切出ずに動くようになりました。
2010ランタイム下で通知を出なくする方法わかりますでしょうか?


43名無しさん@そうだ選挙にいこう:2010/10/28(木) 20:39:48
>>42
んとね。a2010のウイザードはa2007のをそのまま搭載しちゃったみたいなので、a2010に展開せねばなら
んのなら追加レジストリのところでa2010用のレジストリを登録するか、生成されたmsiファイルをorcaか
なんかで修正する必要があるんだわ。
ルート:必要なの選んで。既定のルートでよいと思うけど。
キー:Software\Microsoft\Office\14.0\Access\Security\Trusted Locations\{GUIDなどUniqueString}
名前:Path
値:[DATABASEDIR]
追加ファイルのサブフォルダ指定は不具合発生中だからやってダメだったらあきらめてね。別パッケージに
すれば可能なんだけど、まぁその必要はないかなと。
4443:2010/10/28(木) 20:43:39
2010が見に行くレジストリがここで、
Software\Microsoft\Office\14.0\Access\Security\Trusted Locations\
2007が見に行くのがここ。
Software\Microsoft\Office\12.0\Access\Security\Trusted Locations\
ってことね。よしなによしなに。
45名無しさん@そうだ選挙にいこう:2010/10/28(木) 22:57:25
>>44
出来ました。大感謝m(。。)m
46名無しさん@そうだ選挙にいこう:2010/10/31(日) 18:29:58
かなり初歩的な質問ですが・・・

テーブル
Key1,Key2,Key3
0001,0002,0003
0011, ,0013
, ,0023
と入力されている場合

クエリ
Key1,Key2,Key3
0001,0002,0003
0011,0013,
0023, ,
というように寄せる
ようにするにはどのようなやり方をすれば
良いでしょうか?

47名無しさん@そうだ選挙にいこう:2010/10/31(日) 19:58:21
初歩的な質問じゃない気がするけど・・・
クエリだとどうやってやるのか分らんけど、VBAなら簡単に出来るよ。
48名無しさん@そうだ選挙にいこう:2010/10/31(日) 21:59:44
>>47
すごい!VBAなら簡単なんですか?
クエリだと、if文でisNotNull判定を駆使しないと
出来なさそうでしたけど・・・
49名無しさん@そうだ選挙にいこう:2010/10/31(日) 22:49:31
昔ACCESS2002で作成されて、ACCESS2002ランタイム+パッケージで配布されてずっとXPのPCで使っていたシステムがあります。
これの元のMDBファイルを別のPC(OSがXPやWIN7でACCESS2010が入っているPC)に持って行って開くと
「データベースまたはプロジェクトにファイル'comdlg32.ocx'version1.2を参照する切断された参照が含まれています。」
と表示されます。それでも開いて使用すると
「VBAのコンパイルエラー:プロジェクト又はライブラリが見つかりません。」
○=Right(□,×)の「Right」のところでカーソルが止まっています。

VB6のランタイムを入れると動くようになるのですが、どのような命令?(関数?)を使った時にVB6のランタイムが必要になるか
わかりますでしょうか?このシステムのVBAのコードを見てもよくわかりません。それにそれ程難しいしいことをしているシステムには見えないのに
何でVB6のランタイムがいるのかと思いまして。それで削ってもいいような機能の部分なら削除するし、他の方法に置き換えられそうなら
書き換えようと思います。(これの作成者は大分昔に退職されていて聞くのが困難です。)

何でこんな質問をしたかと言いますと、現在ACCESS2010でパッケージ化してWIN7のPC等にインストールするものを作っていたのですが、
これを配布した時に、「パッケージ化したもののセットアップをやった後、VB6のランタイムのセットアップもやってね」と言うと
「一つにまとめられないか?」と言われそうなので。
またVB6のランタイムを使うということは古い方法であり、ACCESSの将来のバージョンでサポートしなくなるのではないかと思いまして。
取り留めもない話ですみません。
50名無しさん@そうだ選挙にいこう:2010/10/31(日) 23:59:09
>>48
クエリでも頑張れば出来るかもね。
51名無しさん@そうだ選挙にいこう:2010/10/31(日) 23:59:49
>>49
ググれはいくらでもヒットすると思うけど・・・
52名無しさん@そうだ選挙にいこう :2010/11/01(月) 13:58:50
リボンのカスタムで参考になるファイル
ダウンロードできるとこはありますか?

USysRibbonsテーブルのxml記述の参考
恥ずかしいのですが、マクロ全然分かりません
53名無しさん@そうだ選挙にいこう:2010/11/01(月) 14:59:56
いいサンプルがあると思う。英語だけど。
ttp://www.accessribbon.de/en/

少なくともmsdnは全部読め。ためになる。
http://msdn.microsoft.com/ja-jp/office/aa905530.aspx
http://msdn.microsoft.com/ja-jp/library/aa338202
http://msdn.microsoft.com/ja-jp/library/aa722523
http://msdn.microsoft.com/ja-jp/library/aa338199
http://msdn.microsoft.com/ja-jp/library/ee691833%28v=office.14%29.aspx

access ribbonXml USysRibbons でグーグルちゃんに聞けばそこそこでてくるべな。

で、なにがわからんのだ?きっかけがあると、だだだだーって頭に入っていくもんだぜ。
54名無しさん@そうだ選挙にいこう:2010/11/01(月) 17:04:28
>>51
検索してみます・・・
55名無しさん@そうだ選挙にいこう:2010/11/02(火) 15:47:32
他のDBは使ったことがあるのですが、Accessに関しては初心者です。

実はある方が作ったAccessのDB(mdb形式)を他のDBへ移植したいのですが、
既に定義済みテーブルを解析して、対応するSQL文(Create Table)を生成する方法
ってあるのでしょうか?

あるいは作成してくれるツール類なんてあるんでしょうか?
56名無しさん@そうだ選挙にいこう:2010/11/02(火) 16:14:15
>>55
VBAで自作したら? 経験者らしいので、それなりに自分で探したとしてだけど。
テーブル名は取得できるし、テーブル名が取得できれば
フィールドのデータ型とかも取得できるでしょ。
57名無しさん@そうだ選挙にいこう:2010/11/02(火) 19:32:33
mdbの解析って世界で一二を争うくらい無意味な仕事だと思うんだ
58名無しさん@そうだ選挙にいこう:2010/11/02(火) 19:36:20
刺身にタンポポを乗せる仕事に戻るんだ
59名無しさん@そうだ選挙にいこう:2010/11/02(火) 21:00:30
>>55
あるよ。
6055:2010/11/02(火) 22:45:34
>>56
実は知り合いに相談したら、同じような回答が来ました。
ただ、VBA/Accオブジェクトはあまり知識がなくて・・・

>>59
とりあえずそれっぽいの見つけました。
SQLの窓 っていうのでできそうです。
http://winofsql.jp/

みなさん、コメントありがとうございました。
61名無しさん@そうだ選挙にいこう:2010/11/03(水) 00:51:51
ずっとググってきましたがどうしても見つからないので質問します。
Access2003でTreeView上で動く右クリックショートカットメニューを動的に作ろうと思っています。
ツールバーへの登録まではVBAでCommandBarsオブジェクトでいけたのですが
そこから先、ショートカットメニュー上のユーザー設定への登録(種類をポップアップにする)がわかりません。
どんなコードを書けばいいのでしょうか?
62名無しさん@そうだ選挙にいこう:2010/11/03(水) 08:52:05
基本的な質問で申し訳ないんですが、アクセスってどんな時に使用するソフトなんですか?
出来れば判り易い実例を交えて教えてください
63名無しさん@そうだ選挙にいこう:2010/11/03(水) 09:43:52
本格的なアプリを作る時のプロトタイプ作成専用品
64名無しさん@そうだ選挙にいこう:2010/11/03(水) 09:50:03
>>62
暇なとき──というのは冗談で、まったく別のソフトだがExcelでVlookupを多用するような処理を得意とする。
詳しく知りたければ、「データベース」あたりで検索すればいい。
簡単に言うと、データを効率的に保存するための仕組み(DBエンジン)に接続、開発を容易にするためのソフト。
ぶっちゃけ、SQLやVB(ADO、DAO)を扱えるのなら、Excelでも開発はできる。
DBエンジン自体はWindowsマシーンならすでに入っているからね。

例)
マンガ本をたくさん持っているので一覧を作るとする。
ただ一覧を作るだけじゃ面白くないから、いろんな風にデータを取り出したいとか思わない?
作者別に一覧にしたり、出版社別に一覧にしたり。またはデータに棚番を持たせて
探している本がどこにあるかを検索できるようにしたりと、データの持たせ具合によって
いろいろな形で抽出できる。
65名無しさん@そうだ選挙にいこう:2010/11/03(水) 11:37:31
>>53 さんありがとうございます。
どこが分からないは質問すらできないほど知識ありません。
ちょっとずつ読んでいます。

アクセスのコントロールのidMso値を調べるには?
アクセスの画像のimageMso値を調べるには?
教えて下さい。


66名無しさん@そうだ選挙にいこう:2010/11/03(水) 13:09:19
>>64
例えがとても判り易いです
なるほど
ありがとうございました
6753:2010/11/03(水) 16:35:05
>>65
■一覧■
Office 2010 Help Files: Office Fluent User Interface Control Identifiers
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=3f2fe784-610e-4bf1-8143-41e481993ac6&displaylang=en

2007 Office System Document: Lists of Control IDs
http://www.microsoft.com/downloads/en/details.aspx?familyid=4329D9E9-4D11-46A5-898D-23E4F331E9AE&displaylang=en

展開すっとExcelになってっからこれ使えさ。コントロールの種類もわかるから必須さぁ
o2010の方には、こうかいてある。
These names are also accessible within the 2010 products by hovering over controls in the QAT customization dialog, and looking at the screentip of the control.
クイックアクセスツールバーカスタマイズダイアログがあるべ、コントロールをさマウスホバーにすっとさ表示されるチップに出ているのがさ、名前さぁ。

■xsd■ついでにスキーマはこれだかんな。入力支援してくれるエディタで使えよ〜
Office 2010 Reference: Office Fluent User Interface XML Schema
http://www.microsoft.com/downloads/en/details.aspx?familyid=C2AA691A-8004-46AC-9852-102F1D5BCD18&displaylang=en

2007 Office System: XML Schema Reference
http://www.microsoft.com/downloads/en/details.aspx?familyid=15805380-f2c0-4b80-9ad1-2cb0c300aef9&displaylang=en

■Icon■アイコンギャラリーはこれな。
2007 Office System Add-In: Icons Gallery
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=12b99325-93e8-4ed4-8385-74d0f7661318&displaylang=en

2010のは、ttp://www.accessribbon.de/en/ のdownloadsにあるやつの方がいいぜ。

俺用のメモとしても書いた。
68名無しさん@そうだ選挙にいこう:2010/11/04(木) 13:28:34
Access2010です。
非連結フォームのテキストボックスにバーコードリーダーで値を読み込み、
そのタイミングでテーブルにレコードを追加する処理を考えています。
フォーム上での作業をなくすため、レコードを追加したらすぐに次のバーコードを読み込みたいのですが、どのイベントで実行すればいいのかわかりません。
現在ではテキストボックスの更新前処理で実行していますが、一度他のオブジェクトにフォーカスを移動しないとなりません。
変更時にも試しましたがうまくいきませんでした。

アドバイスをお願いします。
69名無しさん@そうだ選挙にいこう:2010/11/04(木) 14:04:10
70名無しさん@そうだ選挙にいこう:2010/11/04(木) 14:09:31
71名無しさん@そうだ選挙にいこう:2010/11/04(木) 14:14:55
まあ、バーコード側で改行コード付加設定ってことじゃね
72名無しさん@そうだ選挙にいこう:2010/11/04(木) 14:21:36
>>68
バーコードリーダー側の設定で、バーコード入力の末尾に Enter か Tab を出力できるなら、
 テキストボックスの更新後処理イベントでレコード追加 → レコード追加後に SetFocus でテキストボックスにフォーカスを戻す。

設定出来ないなら、変更時イベントでテキストボックスのテキストの長さが、必要な長さになったかをチェック。
 必要な長さを満たしたときにレコードを追加→レコード追加後にテキストをクリア。

でいけると思うけど、やったことないから分からない。
73名無しさん@そうだ選挙にいこう:2010/11/04(木) 14:26:25
>>70
自分が使っているリーダーでは次のテキストボックスに移動してくれないんですよ
移動してくれれば対処できるんですけど。
次のテキストボックスへのSetFocusのタイミングもつかめません。
74名無しさん@そうだ選挙にいこう:2010/11/04(木) 14:33:21
>>71-72
リロードしてませんでした

リーダーの説明書を探してみます。
ただ実際に使用するのは別の部署で、どのリーダーを使用するかわかりません。
>>72さんの方法も検討してみます。
75名無しさん@そうだ選挙にいこう:2010/11/04(木) 16:42:51
ACCESS2010のパッケージ化機能を使ってパッケージ化した物があります。
ファイル「setup.exe」をクリックしてのインストールのテストには成功しています。
次にCD-Rにこのパッケージ化したものをコピーしてオートランでインストールが始まる
インストール用CDを作ろうとしましたが
PCに内容をコピーしたCDをセットしてもCD内のフォルダが表示されるだけです。
何故でしょうか?

(パッケージ化した時に生成された次のものをそのままCDにコピーしています。
ファイル「autorun.inf」、ファイル「setup.exe」、フォルダ「Files」)

ファイル「autorun.inf」の中身は
[autorun]
OPEN=SETUP.EXE /AUTORUN
ICON=SETUP.EXE,1
です。


他のMS-OFFICEなどのCDをセットすると自動的にセットアップが始まるので
PC側でオートラン禁止になっているわけでもないと思いますが。

CD-Rを焼く時の設定で何かあるんでしたっけ?
76名無しさん@そうだ選挙にいこう:2010/11/04(木) 16:44:55
74です

IMEがオンになっていたのが原因でした。
オフにしておけば自動的に次のテキストボックスに移動してくれました。

お騒がせしました。

77名無しさん@そうだ選挙にいこう:2010/11/04(木) 17:14:36
>>75
で、どこがAccessの質問なの?
78名無しさん@そうだ選挙にいこう:2010/11/04(木) 17:19:07
>>77
ACCESS2010のパッケージ化で吐き出したautorun.infってそのまま使えるのかどうかという点で・・・
79名無しさん@そうだ選挙にいこう:2010/11/04(木) 18:15:30
フォームのPopupプロパティをプログラムから変更することはできませんか?
フォームをdialogで開くと作業ウィンドウを固定もtrueになってしまいます。
80名無しさん@そうだ選挙にいこう:2010/11/04(木) 18:33:12
ダイアログフォームは、作業ウインドウ固定のフォームです
81名無しさん@そうだ選挙にいこう:2010/11/04(木) 18:48:18
>>78
[Autorun]
open=setup.exe

これでオートランしたぞ。RWが手元にないからこれ以上の実験はしたくない。
82名無しさん@そうだ選挙にいこう:2010/11/04(木) 19:05:36
>>81
ありがとうございます。ちょっとやってみます。
(もしかしてCD-R焼いてテストして下さったんですか。すみません)
83名無しさん@そうだ選挙にいこう:2010/11/04(木) 20:05:29
>>81
XP SP3とVISTA SP1でやってみましたけど駄目でした・・・

[autorun]
OPEN=SETUP.EXE
よく見たらこの↑ように大文字でやっていましたけど、関係ないですよね。
ACCESSの問題とかじゃなくて別の要因か・・・

84名無しさん@そうだ選挙にいこう:2010/11/04(木) 20:20:00
Access2003です

プロパティ(ピクチャ)でコマンドボタンにビットマップを貼り付けてます
ボタンが有効の時は良いのですが、無効にした時イメージが消えてしまいます
何か良い対処方法がありましたらご教授ください
8581:2010/11/04(木) 23:09:43
>>83
大文字、小文字は関係なさそう。俺はXP SP3で試したけど。
まずは問題きりわけだね。メモ帳あたりをOpenさせて確認してはどうか。
86名無しさん@そうだ選挙にいこう:2010/11/04(木) 23:17:55
WindowsでAutorun切ってあれば動かないけどな
87名無しさん@そうだ選挙にいこう:2010/11/05(金) 10:09:19
>>85
>>86
画面にメッセージを表示して止まるバッチファイル「a.bat」というのを作って
autorun.infファイルは
[autorun]
OPEN=a.bat
というのを作ってみました。
それをCD-RWに焼いたのをXP SP3のパソコン3台とVISTA SP1 1台にセットして試してみました。
XP SP3のパソコン2台はCDの中身が自動的に表示されるだけ、もう1台は何も起きませんでした。
VISTA SP1もCDの中身が自動的に表示されるだけでした。

試しにOFFICEの製品版のCDを入れてみたら、XP SP3で先程何も起きなかった1台以外はセットアップが開始されました。
VISTA SP1のパソコンは「SETUP.EXEを実行」、「フォルダを開く」の選択の画面がでました。

CDを焼いているPCが変なのかと思って別のPCで焼いてみましたが結果は同じでした。

これはもうACCESSとは違う分野になってますね。
88名無しさん@そうだ選挙にいこう:2010/11/05(金) 10:52:38
>>87
なんかのアプリが邪魔しているとか。
ライティングソフトが入っているようなら、それが常駐していないか確認。
常駐しているようなら、終了して試してみる。
あとはパソ一般板あたりで質問したほうがいいかも。
8984:2010/11/05(金) 11:03:16
無効にした時イメージが消えてしまうのではなく、
イメージがグレーで塗りつぶされているようです。

その為、無効の時に異なるイメージを表示したいのですが
それは可能でしょうか?

もし可能であればその手段をご教授いただけないでしょうか
90名無しさん@そうだ選挙にいこう:2010/11/05(金) 11:09:58
>>89
透明化できるコントロールを重ねたら?
91名無しさん@そうだ選挙にいこう:2010/11/05(金) 11:26:24
>>88
わかりました。

皆さん お世話になりました(゜゜)/~ m(。。)m
92名無しさん@そうだ選挙にいこう:2010/11/05(金) 12:45:13
>>90
なるほど、コントロールを重ねて、有効時と無効時で
表示;/非表示を切り替えるってことですね!
試してみます!
93名無しさん@そうだ選挙にいこう:2010/11/05(金) 16:35:54
>>91ですがその後、
autorun.infファイルをウイザードで作成するソフトを見つけて、
それで生成したautorun.infファイルの中を見たら「shellexecute=」というコマンドを使っていたのでこれを参考にしてテストで
↓のようにしたらa.batがオートランで動きました。
[autorun]
shellexecute="a.bat"

同じコマンドを使ってACCESSでパッケージ化したものもオートランで動くようなりました。
このshellexecuteというコマンドの正体がよくわかりませんが、これでいいとこにします。m(。。)m



94名無しさん@そうだ選挙にいこう:2010/11/25(木) 19:47:41
Access で特定フィールドの単一化って、どうすれば良いですか?

[ID],[年月日],[時間] 、でレコードが沢山あります。
各[年月日]のなかで最大[時間]のレコードを抽出したいです。
95名無しさん@そうだ選挙にいこう:2010/11/25(木) 20:47:13
リレーションを組んだテーブルAとテーブルBがあり

テーブルAをソースとしたフォームをつくり
その中にテーブルAの各フィールドと連結したテキストボックスをおきます
その中のテキストボックス1のデータで
テキストボックス2にテーブルBのデータを表示させたい場合

テキストボックス2のコントロールソースはどのように設定すればよいのでしょうか?
96名無しさん@そうだ選挙にいこう:2010/11/25(木) 21:54:32
>>94
集計クエリー

>>95
DLookUp関数
97名無しさん@そうだ選挙にいこう:2010/11/25(木) 22:01:29
>>95
バージョンは何?
リレーション組んであれば普通に追加フィールド候補で出てくるから、ドラッグすればOK
98名無しさん@そうだ選挙にいこう:2010/11/28(日) 18:57:17
最近、Access2007を勉強して、仮で読書録?みたいなものを作ったのですが、
うまくできているか自信がありません(>_<)

どなたかに、チェックして頂けると幸いですm(_ _)m

http://www.dotup.org/uploda/www.dotup.org1273661.zip.html
passは1111です

99名無しさん@そうだ選挙にいこう:2010/11/28(日) 21:00:57
アクセス2010を使っていますが、フィールドの並び替えが出来ません。
もちろんレイアウトビューで並び替えをしようとしているのですが、
フィールド名が編集可能な状態になってしまいできません。
どうしたらいいのでしょうか。
100名無しさん@そうだ選挙にいこう:2010/11/29(月) 02:04:59
>>98
予約語をフィールド名に使うのはやめれ。子テーブルの主キーインデックスはなんでこんなだ。
>>99
オレンジの枠をつかむ感じで、そっと優しく。
101名無しさん@そうだ選挙にいこう:2010/11/29(月) 22:49:52
DLookUPについて質問なんですが
form1からform2へ値を渡し、それによって
form2にレコードを1件、単票形式で表示させています。 

そのさいにtextbox1に表示されたフィールドデータを参照させて
textbox2(非連結)に別テーブルから表示させたいのですが

ここまで書いてる途中で気づいたけど>>95さんとほぼ同じ内容ですね。

textbox2にdlookupをどう書いても循環エラー?だからエラーでっぱなしに
なってしまいます。

 ちなみにこういう風に書いてます。
 =DLookUp("[顧客名称]","T_顧客リスト","[顧客ID] = " & [Forms]![frm詳細]![txt顧客ID])


自分の解釈↓
=DLookUp("[表示させたい物]","表示させたい物が入ってるテーブル"_
,"[表示させたい物と紐づく物] = " & [Forms]![単票形式のフォーム名]![参照したtextbox1])
10298:2010/11/30(火) 10:15:30
>>100
レスありがとうございます(>_<)

やっぱり予約語は使わない方がよいんですね(>_<)修正します

あと、子テーブルの主キーインデックスについてですが、
このやり方は、「はじめてのデータベース」って本のやり方を真似てみたのですが、
この場合、どのようにするのが一般的なのでしょうか?(´・ω・`)
103GOMA:2010/12/04(土) 08:56:36
>>101
もう解決しているかもしれませんが、textbox2の名前はどうなっていますか。

コントロールソースに式を入れる場合、レコードソースのフィールド名と同じ
場合はエラーになりますけど、こんなことではありませんか。
104名無しさん@そうだ選挙にいこう:2010/12/04(土) 10:35:51
Access2010のツリービューコントロールで質問です。
TreeViewのチェックボックスを有効にしていて、VBAでノードチェックのSubにおいて、以下のようなコードを書いても、フォーム上でチェックボックスの値が変わらない問題に直面しています。

これは仕様なのでしょうか?


Private Sub TreeView_NodeCheck(ByVal Node As Object)

'以下のコードでも同じでした。
Me!TreeView(Node.Key).Checked = False

'ByValなので、駄目だとは思いますが。。
Node.Checked = False


End Sub
105名無しさん@そうだ選挙にいこう:2010/12/04(土) 13:37:55
Me.TreeView.Nodes(Node.Key).Checked = False
としても、これは何をしたいんだろか
106名無しさん@そうだ選挙にいこう:2010/12/06(月) 23:05:03
【 システム環境  】 WindowsXP,Access2000
【 VBAが使えるか 】 少しだけ・・・
【 VBAでの回答  】 できればクエリの関数で。。。

下記のようなテーブルがあるとします

日付        時間   商品名   取引内容
2010/12/01   17:00   みかん    入荷
2010/12/01   17:00    みかん    出荷
2010/12/01   17:30   桃       入荷
2010/12/01   18:00   メロン     出荷
2010/12/01   19:00   スイカ     入荷
2010/12/01   20:00    スイカ     出荷
2010/12/01   21:00   バナナ    入荷
2010/12/01   21:00   梨       出荷




このとき、同一日のある時間帯で”出荷”しかないレコードだけを
クエリで抽出したいのですが、取引内容を使った関数としては
どのようなものを書けば良いのでしょうか?

例)Between関数で時間の17:00〜21:00を指定 → メロン、梨のレコードだけ抽出される

”出荷”で絞るクエリと”入荷”で絞るクエリの二つを作って
さらに不一致クエリを使うという方法はあると思うのですが、
単純にクエリ一つでできるという方、ご教示いただければ幸いです。

よろしくお願いいたします。
 
107名無しさん@そうだ選挙にいこう:2010/12/06(月) 23:06:22
↑訂正

誤:このとき、同一日のある時間帯で”出荷”しかないレコードだけを

正:このとき、同一日のある時間帯で”出荷”しかない商品のレコードだけを
108名無しさん@そうだ選挙にいこう:2010/12/07(火) 01:09:54
>>106
テーブル名は tb1 、日付は見ていないので適当に。何も考えずに入れ子にしているだけですが、無理矢理1行で書くならこんな感じ?

select t1.* from (select * from tb1 where tb1.取引内容 = '出荷') as t1 where not exists (
select t2.* from (select * from tb1 where tb1.取引内容 = '入荷') as t2 where t1.商品名=t2.商品名) and t1.時間 between cdate('17:00') and cdate('21:00');
109108:2010/12/07(火) 01:29:15
上の例で日付を見るなら、少し長いけど

select t1.* from (select * from tb1 where tb1.取引内容 = '出荷' and (tb1.日付=cdate('2010/12/01')) and (tb1.時間 between cdate('17:00') and cdate('21:00'))) as t1 where not exists (
select t2.* from (select * from tb1 where tb1.取引内容 = '入荷' and (tb1.日付=cdate('2010/12/01')) and (tb1.時間 between cdate('17:00') and cdate('21:00'))) as t2 where t1.商品名=t2.商品名);

110名無しさん@そうだ選挙にいこう:2010/12/07(火) 06:01:03
>>106 SQL だと、こんな感じ。
select * from 入出荷 t1 where
 t1.時間 between #17:00# and #21:00# and
 t1.取引内容 = '出荷' and
 not exists (select * from 入出荷 t2 where
  t1.日付 = t2.日付 and
  t1.商品名 = t2.商品名 and
  t2.時間 between #17:00# and #21:00# and
  t2.取引内容 = '入荷')

意味は >>109 と同じで、サブクエリを1個省いた版。
111名無しさん@そうだ選挙にいこう:2010/12/07(火) 07:24:55
>>108
ありがとうございます!

これで今日やってみます!
112名無しさん@そうだ選挙にいこう:2010/12/07(火) 09:01:02
ACCDEはAccess Services に対応してないんだな
113104:2010/12/07(火) 10:03:38
>105
チェックを入れたくないノードにチェックが入った場合は、それをundoしたいんです。
BeforeUpdate等のイベントがないようなので。。
114名無しさん@そうだ選挙にいこう:2010/12/07(火) 21:17:15
>>113
ゴリ押しだけど、どうかな。スペースキーについては考慮してないけどなんとなくわかるべ。
Option Compare Database
Option Explicit

Private pkey As String

Private Sub TreeView0_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal x As Long, ByVal y As Long)
 Me.TreeView0.Nodes(pkey).Checked = False
End Sub

Private Sub TreeView0_NodeCheck(ByVal Node As Object)
 pkey = Node.Key
End Sub
115名無しさん@そうだ選挙にいこう:2010/12/07(火) 23:32:50
Access for iPadが出たら即Access 2010とセットで買うんだがな。
116名無しさん@そうだ選挙にいこう:2010/12/09(木) 21:14:05
全くの素人ですが、会社のAccess2003でスケジュール管理システムを作りたいと考えています
しかし、諸事情により会社だけでこれを作るのは困難なので、
自宅でも作業(Accessの勉強も含む)を引き継ぎたいと思います。
ところが、いざソフトを購入しようとしたところ2003は非常に高価で手が出せません。
なぜか最新の2010の方が安価なので、もし開発作業および学習用途に支障がないのなら2010を購入したいところですが、
上級者の皆さんはどう思われますか?
117名無しさん@そうだ選挙にいこう:2010/12/09(木) 21:42:54
>>116
会社と自宅の両方で Access 2010 を導入することを薦める。
Access 2010 でも 2003 形式の開発は可能だけど、画面はかなり違うし、機能制限等で戸惑うと思う。
どうせ勉強するなら Access 2010 に一本化した方が効率的だし、機能も多いし、使い易い。
118名無しさん@そうだ選挙にいこう:2010/12/09(木) 23:55:52
>>117
>会社と自宅の両方で Access 2010 を導入することを薦める。
ありがとうございます。
自分も出来ればそうしたいのですが、
会社のソフトに関しては自分の一存では決められないですね。
そして今後2010が導入されるとしてもかなり先のことになりそうです。

>Access 2010 でも 2003 形式の開発は可能
一応可能なのですね。少し安心しました。
ちなみに2003(会社)→2010(自宅)→2003(会社)…というように少しずつ交互に編集することも可能でしょうか?

>画面はかなり違うし、機能制限等で戸惑うと思う。
やはり2010を使うとしたらある程度割り切りが必要のようですね。
2003が1万円くらいで買えれば最高なのですが…
119104:2010/12/10(金) 00:16:34
>>114
ありがとうございます。やってみます。
120117:2010/12/10(金) 00:28:38
>>118
> 交互に編集することも可能でしょうか? 
可能だよ。

何度も言って悪いけど、開発が1人なら 2010 を1個買ってもらって、
使うだけの人には無料のランタイムを配布して使ってもらうのが一番安く済むと思う(開発コスト・時間的にも)。
ただ、2003 と一緒に使うと競合が起きて面倒かも?(試したことないから分からない)。

開発が始まったら、とりあえず 2010 の評価版をインストールして使ってみたら?
それから買っても遅くないでしょ。
121名無しさん@そうだ選挙にいこう:2010/12/12(日) 20:10:13
Access2010なんですけど、accdrにした場合に既定のショートカットメニューを使う方法はありませんか?
右クリックしたときに出るテキストフィルタとか並べ替えとかが便利でaccdrでも使いたいです。
122名無しさん@そうだ選挙にいこう:2010/12/12(日) 21:50:24
>>121
Application.CommandBars("Form Datasheet Cell").ShowPopup
とかでだめかね。Form Datasheet Cell 以外は自分で探してけろ。
123名無しさん@そうだ選挙にいこう:2010/12/12(日) 21:52:24
>>122
有難うございます。
やってみます。
124名無しさん@そうだ選挙にいこう:2010/12/12(日) 22:55:00
できました。
CommandBars(4)ですね。
色々と勉強になりました。
125名無しさん@そうだ選挙にいこう:2010/12/14(火) 21:09:03
VBAのレコードセットについてお聞きしたいのですが・・・

(宣言略)
Set RS = New ADODB.Recordset
RS.Open "テーブル名", CN, adOpenKeyset, adLockOptimistic
のように、テーブルやSQLをセットするのと同様に、
クエリ名を入れてレコードセットすることは可能なのでしょうか?
よろしくお願いします。
126名無しさん@そうだ選挙にいこう:2010/12/16(木) 01:58:06
>>125
ヘルプを読めば済むことだが、クエリでもSQL直書きでも可能だよ。
ただ、接続先がAccess以外ならば注意が必要。SQLは接続先に依存。
127名無しさん@そうだ選挙にいこう:2010/12/16(木) 09:04:13
Access2007を使用しています。
↓の様なデータベースについてなのですが・・・。

項目    sort
 A      1
 B      2
 C      3
 D      4

新たにEというデータを入力してBとCの間に挿入(sort順を3にして)
それ以降のデータのsort順を1つずつ下げるにはどうすればいいのでしょうか・・・?
4つなら手動でやるのですが、当然そんな訳もなく、
普段Accessは使用していなかったのですが、どの機能を使えばいいのでしょうか?
128名無しさん@そうだ選挙にいこう:2010/12/16(木) 09:33:59
そういう変ちくりんなのは桐を使えばよいよ
129名無しさん@そうだ選挙にいこう:2010/12/16(木) 12:20:21
>>127
更新クエリで必要なだけ加算してから、レコードを追加
130名無しさん@そうだ選挙にいこう:2010/12/17(金) 20:04:53
>>126
ありがとうございます。
勉強になります。
131名無しさん@そうだ選挙にいこう:2010/12/21(火) 10:30:55
Access2010ですけど、ランタイムモードで印刷できないようにするには、どんな方法がありますか?
132名無しさん@そうだ選挙にいこう:2010/12/21(火) 11:01:52
>>131
ショートカット/コマンド自体を使用不可とか不可視にするって感じじゃね?
133名無しさん@そうだ選挙にいこう:2010/12/21(火) 23:00:40
ACCESSのフォームの色って、コードから変えられるの?
プロパティからだけ?
134名無しさん@そうだ選挙にいこう:2010/12/21(火) 23:12:19
コードでプロパティを設定する
135名無しさん@そうだ選挙にいこう:2010/12/22(水) 09:46:25
Access2003でレポート(名簿)を作成したいのですが、テーブルに
 ID、氏名、部署
 1、一郎、営業
 2、次郎、営業
 3、三郎、営業
 4、四郎、営業
 5、五郎、開発
 6、六郎、開発
 7、七子、経理
みないなデータがあるとして、このテーブルをレコードソースにした時
部署ごとで改ページを入れたいのですが、可能でしょうか?
もし可能であれば、どうすれば良いのでしょうか?
よろしくおねがいします
136名無しさん@そうだ選挙にいこう:2010/12/22(水) 11:01:58
部署でグループ化して部署セクションの改ページプロパティで制御
137名無しさん@そうだ選挙にいこう:2010/12/22(水) 11:12:51
>>136
ありがとうございます
セクションとか良く分かってないので、そのキーワードで調べながらやってみます
また行き詰ったらお願いします
138名無しさん@そうだ選挙にいこう:2010/12/22(水) 15:01:48
>>137
セクションは詳細とかレポートヘッダーとかのこと
部署でグループ化すれば部署ヘッダー、部署フッターが詳細セクションの上下にできる

139名無しさん@そうだ選挙にいこう:2010/12/22(水) 16:00:52
>>138
お蔭様で部署ごとの改ページができました
ありがとうございました

今度は、ある条件の場合のみ部署ごとの改ページを行う/行わないを切り替えたいのですが
同じレポートを使って改ページする・しないと言う制御もできるのでしょか?

とりあえず試してみたのは
1.部署ヘッダーの改ページプロパティで「カレントセクションの前」 → 「しない」に変更
2.レポート(詳細)の中に改ページコントロールを追加
3.部署ヘッダーのフォーマットイベント内で、条件によって改ページコントロールの有効/無効を切り替え

という事をやってみたのですが、いかなる時も改ページが有効になることはありませんでした
何か考え方自体が間違ってるのでしょうか・・・
140139:2010/12/22(水) 17:31:56
自己解決しました
グループヘッダーのForceNewPageプロパティを変更することで
問題なくできるようになりました
お騒がせしてすみませんでした
141名無しさん@そうだ選挙にいこう:2010/12/22(水) 22:35:42
>>134
それできんの?なるほど。
142名無しさん@そうだ選挙にいこう:2010/12/22(水) 22:59:54
セキュア桐は利用者コード書き込まれてる部分も暗号化してくれんかなぁ
かなり違ってくると思うんだが
143名無しさん@そうだ選挙にいこう:2010/12/25(土) 10:41:18
Access2010です

チェックボックスやトグルボタンのコントロールソースに式を指定してあって、それをクリックすると、
「プィポッ」の音とともに以下のメッセージが出ます。*******は式です。
  このコントロールは式'************'に連結しているため、編集できません。

この警告音とメッセージを抑止したいのですが、方法はありませんか?
マウスクリックイベントが使用できるのが前提ですので、.enable=True のままで
144名無しさん@そうだ選挙にいこう:2010/12/25(土) 16:29:11
>>143
うらー、こんなんでた。
Private Sub CheckBox1_KeyDown(KeyCode As Integer, Shift As Integer)
Debug.Print "Keystroke"
KeyCode = 0
End Sub

Private Sub CheckBox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Debug.Print "click"
End Sub

Private Sub CheckBox1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
DoCmd.CancelEvent
End Sub

Private Sub togglebutton1_KeyDown(KeyCode As Integer, Shift As Integer)
Debug.Print "Keystroke"
KeyCode = 0
End Sub

Private Sub togglebutton1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Debug.Print "click"
End Sub

Private Sub togglebutton1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
DoCmd.CancelEvent
End Sub
145名無しさん@そうだ選挙にいこう:2010/12/25(土) 17:34:27
>>144
なんとなく文意は解りました
いま出先なので月曜日に試みて見ます
146名無しさん@そうだ選挙にいこう:2010/12/26(日) 13:48:21
>>144
試したら出来ました、有難うございます
147名無しさん@そうだ選挙にいこう:2010/12/26(日) 18:24:58
2010
複数レコードフォームの明細部のトグルボタンのコントロールソースに式を設定して、テーマを適用すると
他のフィールドのデータ表示が旨く行かないね
クリックしないと表示しないレコードが多々出現
テーマ解除すると治る
148名無しさん@そうだ選挙にいこう:2010/12/26(日) 18:33:27
2003で作ったシステムって、2010でも問題ないと考えてよいのかな?
149名無しさん@そうだ選挙にいこう:2010/12/26(日) 22:51:22
Accessはファイル共有状態でもインデックスが効くんですかね。
150名無しさん@そうだ選挙にいこう:2010/12/26(日) 23:18:59
>>147
まぁ、2010の新機能だし、そんなこともあるでしょ。
でもさ、トグルのコントロールソースに=[フィールド1]という使い方は本来じゃないってこともあるしな。
そのような使い方だと、帳票フォームで詳細Paintイベントが無限に発生するからやめておかないとだよね。

>>148
作りが悪いか、作り込んだシステムほど問題が発生する傾向があると感じた。
まったく問題ないとするのは、楽観視しすぎかもだな。
2007からjetじゃねぇし、2010はVBA7だからコンパイルエラーということもある。
151名無しさん@そうだ選挙にいこう:2010/12/30(木) 18:14:40
WinXPとAccess2002です。
テキストボックス内でAtokで変換を確定すると同時にその値を使って検索したいんですけど可能でしょうか?
通常は文字変換時に「やまだ」→「山田」と確定するためにAtokに対してEnterを押す、そしてAccessに対してEnterを押すと更新後イベントが発生する。
このEnterの2回押しを1回に減らしたいのですが、どのようにしたらよろしいでしょうか?
152名無しさん@そうだ選挙にいこう:2010/12/31(金) 05:32:51
>>151
多分無理。つーか変更時イベントを使えばいいんじゃね?
153名無しさん@そうだ選挙にいこう:2010/12/31(金) 13:38:05
>>152
確定したものを変更するので、手数が変わらないんですよ。
具体的には
やまだ→山田へ変換→Enter押下→山田確定→変更作業→変更時イベント発動 なので、Enter押下と変更作業の二手間は省略できません。
検索専用の非連結テキストボックスだとダーティーも使えないし、無理ですかね…
あっ、もしかしてデフォルト値を設定しておけば使えるかな? 
154名無しさん@そうだ選挙にいこう:2010/12/31(金) 18:35:56
>>153
152が言ってる変更時にTextプロパティみりゃいいじゃねぇか

つーことで、みんなよいお年を
155名無しさん@そうだ選挙にいこう:2011/01/03(月) 20:38:55
>>154
ありがとう!出来ました。valueを使わずにtextを使うのが味噌なんですね。
156名無しさん@そうだ選挙にいこう:2011/01/04(火) 19:54:05
アクセスは何かフォームやレポートが不自由だなぁ
157名無しさん@そうだ選挙にいこう:2011/01/07(金) 21:52:38
ACCESSからEXCELを操作すると、
(VBAで)EXCELを終了させてもプロセスが残ることがあります。
タスクマネージャーを開かずに、また、一旦ACCESSを閉じることなく
EXCELを終了させる方法をご存知の方いますか?
158名無しさん@そうだ選挙にいこう:2011/01/07(金) 23:50:28
>>157
変数名Application.Quit
159名無しさん@そうだ選挙にいこう:2011/01/08(土) 15:01:11
>>158
それが、SAVE、CLOSE、QUIT
全て(単独、複数の組み合わせで)試しましたが、ダメなんですよ。
ACCESSやEXCELは2000、WINDOWSはXPです。
バージョンの問題なのかな。
160名無しさん@そうだ選挙にいこう:2011/01/09(日) 10:24:38
フォームに、同じようなコントロール(例 text1〜text5)があって、
同じ処理を繰り返し行いたい場合の処理について、教えてください。

例えば、このように全てにtextに全ての処理を書いています。
Me!text1 = "A"
Me!text1 = "B"
Me!text1 = "C"

Me!text2 = "A"
Me!text2 = "B"
Me!text2 = "C"

Me!text3 = "A"
Me!text3 = "B"
Me!text3 = "C"



なんとかまとめられないでしょうか?お願いします。
161名無しさん@そうだ選挙にいこう:2011/01/09(日) 10:45:03
>>160
関数化して呼び出せという回答しかできんなぁ。
まずくない範囲で実際の該当部分のコードを晒してみたら? 別解があるかもしれない。
162名無しさん@そうだ選挙にいこう:2011/01/09(日) 11:47:39
>>161
レスありがとうございます。

具体的なコードがすぐ出てこないのです。すみません。

コントロールを、変数に置き換えることは可能でしょうか?
コントロール名 = "text1" とか代入すれば、
あとは繰り返し処理で済むのかなと思うんですが。
163名無しさん@そうだ選挙にいこう:2011/01/09(日) 11:51:20
>>162
コントロール名が本当にtext1とかだったら

For i = 1 to 5
Me("text" & i) = "A"
Next i

とかで回せる。
164名無しさん@そうだ選挙にいこう:2011/01/09(日) 14:45:31
>>163
なるほど。ありがとうございます!
これでコードがすっきりします。

>>160を見直してみたら、随分おかしなプログラム例を書いていました。
これじゃ、全部が"C"ですね・・・恥ずかしいです。
165名無しさん@そうだ選挙にいこう:2011/01/10(月) 10:40:17
ACCESSのバージョンによって、nullの扱いが違うことってありますか?
166名無しさん@そうだ選挙にいこう:2011/01/10(月) 12:18:34
>>165
関数の戻り値が変わることがあっても、nullはnullだと思うよ。
Accessが完璧だとは言わないがまず゛、Accessを疑う前に自分のコードを疑うべき。
具体的にコードを晒してみなよ。
167名無しさん@そうだ選挙にいこう:2011/01/11(火) 08:52:39
Access2010です

フォームで、Ctrl+C,Ctrl+A,Ctrl+P 等々を無効にしたいですが、何か方法はありますか?
168名無しさん@そうだ選挙にいこう:2011/01/12(水) 22:29:59
キートップを破壊する
169167:2011/01/12(水) 23:59:44
お陰様で出来ました
本当に有難うございました
170名無しさん@そうだ選挙にいこう:2011/01/13(木) 20:05:23
>>166
レスありがとうございます。クエリでの質問になります。
テーブルで、値のないレコードにはスペースだけ、値のあるレコードには末尾にスペースが
入っています。抽出したいのは値のあるレコード。

コード 名称
- --------
1 あいう__
2 ________
3 え______

抽出条件を <> NULLとし、値の入ったレコードのみ抽出。
以下のように希望通りの抽出ができました。ACCESS2000です。

コード trim([名称])
- --------
1 あいう
3 え

一方、自宅のACCESS2003で同条件で試したところ、以下のような結果。

コード trim([名称])
- --------
1 あいう
2
3 え

条件を <> ""として抽出すると、希望通りの結果になります。
というわけで、バージョンによって、NULLの扱いが変わるのか?と疑問になりました。
171名無しさん@そうだ選挙にいこう:2011/01/13(木) 21:37:55
>>170
当方2002なので比較的2003よりの挙動のはずだが
ヘルプによれば2003の抽出が正しい。
TrimがNull値を返すのは、対象文字列にNull値が含まれる場合のみ。
バリアント型 (内部処理形式 String の Variant) の値を返すとあるから
スペースのみがが入ってるフィールドでNull値が返ってくるほうがおかしい。
172名無しさん@そうだ選挙にいこう:2011/01/15(土) 13:18:01
>>171
レスありがとうございます。
何故2000での抽出がうまくいったのかは疑問ですが、
この抽出目的での正しい条件は、<>""ということなんですね。
173名無しさん@そうだ選挙にいこう:2011/01/15(土) 14:26:45
>>172
クエリでの話しだと思うけど、後は自動修正が切れているのかもね。
<>Nullは Is Not Nullに自動修正されるはずだけど。
されていないのなら<>"Null"と解釈されているのかも?
174名無しさん@そうだ選挙にいこう:2011/01/17(月) 23:01:57
>>173
条件は、<>NULL入力後、 Is Not Nullに修正されています。

自動修正が切れるということもあり得るんですね。
勉強になりました。
175名無しさん@そうだ選挙にいこう:2011/01/19(水) 22:25:19
桐のスレなくなったのか、誰か立ててくれよ。
176名無しさん@そうだ選挙にいこう:2011/01/24(月) 22:10:04
ComboBox.ListItemsEditForm プロパティ は、ランタイムでは無効なのですか?
177名無しさん@そうだ選挙にいこう:2011/01/25(火) 22:13:02
ランタイムで無効なのはデザイン関係だけじゃないのかな
使う分には制限ないと思うけど
使ってない俺が言うんだから多分間違ってない
178名無しさん@そうだ選挙にいこう:2011/01/28(金) 21:31:45
桐について語るスレ 3 【サーバー未満 Excel以上】
http://hibari.2ch.net/test/read.cgi/bsoft/1296217844/
179名無しさん@そうだ選挙にいこう:2011/01/29(土) 00:55:25
Access 2010での質問になります。

選択クエリを実行するとフィールドの関連付けがうまくなされていない現象
に出くわしたのですが、皆さんの環境でも以下は再現しますか?

1) Access起動し、新規データベースを作成(テスト.accdb)
2) テーブル「T_商品」を以下の条件で作成
・フィールド「ID」のデータ型をテキスト型に変更
・フィールド「商品名」(テキスト型)とフィールド「単価」(通貨型)を追加
・データは適当に入力
例)
101 鉛筆 \50
102 消しゴム \100
103 下敷き \150
3) テーブル「T_商品」でのクエリウィザードを以下の条件で実施
・選択クエリウィザード
・フィールド「商品名」「単価」を「選択したフィールド」に追加
・「各レコードのすべてのフィールドを表示する」
・クエリ名「Q_商品」で「クエリを実行して結果を表示する」
4) ナビゲーションウィンドウにて「テーブルと関連ビュー」を選択
5) すると、なぜか「Q_商品」が「関連付けられていないオブジェクト」として分類される
6) 「Q_商品」をデザインビューで開くと、フィールド名が [ ]付で表示されているので
[ ]の部分を削除すると、5)の状況が改善される

【 システム環境  】 Windows7 64bit, Access 2010 (32bit)
180179:2011/01/29(土) 01:18:38
バージョン違いですが、以下と類似なのかな?
http://support.microsoft.com/kb/979837/ja
181名無しさん@そうだ選挙にいこう:2011/01/29(土) 03:20:41
>>179
5)は発生、6)は発生しない 64bit+64bit
2007から持ち越したのや、64bitだけに発生するのや、32+64だけに発生する不具合もある。
Win7SP1で修正されるであろう不具合もある。まぁ気にスンナ。
182名無しさん@そうだ選挙にいこう:2011/01/29(土) 12:37:52
>>181
検証ありがとうございました。
こちらで症状確認した時も最初は6)は発生しなかったような気が。
バグなら直してほしいのでMicrosoftサポートに相談したほうが
いいかな。インシデント消費するのが癪に障るけど。
183名無しさん@そうだ選挙にいこう:2011/01/30(日) 00:30:45
>>182
障害報告に電話したら?
「情報提供ありがとうございました」で終わる可能性が高いけど

184名無しさん@そうだ選挙にいこう:2011/02/01(火) 11:47:15
Access2010での質問です。

生年月日を、年、月、日に分けて、それぞれフィールドを用意していたのですが、
このたび、一緒にしたほうがすっきりすると思い、生年月日の一つのフィールドに
まとめようとしたところ、年はわかるが、月日がわからない人が何人かおりまして、
その方たちは入力出来ず、行き詰ってしまいました。

このまま年、月、日それぞれのフィールドに分けたままのほうが良いのでしょうか。
それとも、何か良い方法がありますでしょうか。
よろしくお願いします。

【システム環境】 Windows7 (64bit) Access 2010 (32bit)
185名無しさん@そうだ選挙にいこう:2011/02/01(火) 11:56:19
[生年月日]=[年] & Nz([月],"") & Nz([日],"")
[月] と [日]は空欄のままで良いんじゃね?
186名無しさん@そうだ選挙にいこう:2011/02/01(火) 13:15:07
>>185
さっそくの回答ありがとうございます。

現在はその方法ででやっておりまして、適宜年月日を合わせてレポートに出力させています。
ですので、年しかわからない人も入力出来ておりました。

ただ、年月日にフィールドを3つも使い、後からクエリで統合させて利用するのも
すっきりしないと思いまして、年月日をまとめて1つのフィールドにし、個別のフィールドは
削除しようとしたところ、年だけの人のデータをおさめることが出来ず、どうしたら良いのか
考えております。
187名無しさん@そうだ選挙にいこう:2011/02/01(火) 13:26:52
だから、月日は空欄でアスタリクスでも入れとけば
2011年02月01 → 20110201
2011年     → 2011****
で良いんじゃね?

もしかして、日時型 で持ちたいとか?
生年月日は時間軸の一点でなく、8文字のデータ
188名無しさん@そうだ選挙にいこう:2011/02/01(火) 13:50:14
>>187

はい、日時型で持とうと思っていました。

日時型ですと、入力時にカレンダー入力出来るのが便利かなと思いまして。
189名無しさん@そうだ選挙にいこう:2011/02/01(火) 23:22:29
accessの入ってるフォルダの権限が読み取り権限だとレコードロックのファイル作成できないから開けないですよね?
190名無しさん@そうだ選挙にいこう:2011/02/02(水) 01:41:44
>>189
読み取り専用で開くことは可能じゃね?
191名無しさん@そうだ選挙にいこう:2011/02/02(水) 14:54:49
189です。読み取りでひらいてもldbは作成されますよね?
192名無しさん@そうだ選挙にいこう:2011/02/03(木) 09:46:48
DoCmd.TransferText で選択クエリの内容をエクスポートしたいのですが、この時クエリをスナップショットで処理することはできますでしょうか?
エクスポートしたいクエリのエクスポート処理に時間がかかり、テーブルがロックされてしまっているみたいで困っています。
193名無しさん@そうだ選挙にいこう:2011/02/03(木) 14:03:49
>>192
クエリに、レコードロックプロパティとレコードセットプロパティがあると思うんだけど、
それではダメだったってことなのかい?
194192:2011/02/03(木) 17:42:57
実はそのクエリというのは動的に作成しているクエリなんです。
クエリを動的に作成し、そのままエクスポート処理を一連でおこなっているので
そのレコードロックプロパティの値を変えることができないんです...
っていうか変える方法が見つからないです。

クエリデザインの画面からは変更できますよね。
どうやらVBAからは読み取り専用のプロパティとなってるみたいで変更できません。

今は仕方が無いので、そのクエリをレコードセットにスナップショットで開いて
そのレコードの先頭からループで回してテキストファイルを吐いています。
195名無しさん@そうだ選挙にいこう:2011/02/03(木) 22:25:46
>>194
>どうやらVBAからは読み取り専用のプロパティとなってるみたいで変更できません。
Dim Db As DAO.Database, Qdef As DAO.QueryDef
Set Db = CurrentDb
Set Qdef = Db.QueryDefs("クエリ1")

Qdef.Properties("RecordLocks") = 2 'スナップショット

とはいえ、現在選択している手段でいいとおもうけど。
196192:2011/02/04(金) 12:02:15
>>195
ありがとうございます!
RecordLocks プロパティはクエリデザイン画面のプロパティで確認できるところの「レコードロック」ですね。
>>194 で私が「レコードロック」プロパティと書いてしまったからですよね(^^;
本当は「レコードセット」をスナップショットにしたかったのですが...
誤記でご迷惑をお掛けし、申し訳ございません。

お教えいただいた「RecordLocks」の方法も試してみます。
197192:2011/02/04(金) 12:06:49
>>194
qdf.Properties("RecordsetType") = 2

これでした!
隠しプロパティなんでしょうかね、コーディング時にヒントとして候補に出てこないですね。
でも各プロパティの名前をイミディエイトウィンドウで確認したらありました。

どうもありがとうございました!!!
198192:2011/02/04(金) 14:16:43
ところでこの RecordsetType プロパティですが、環境によって有無が分かれています。
WinXP + Access 2003 でもそのプロパティがあったりなかったり。
Access のパッチの差かも?と思い、同じサービスパックを適用して OS を再起動しても
RecordsetType プロパティが出てこないです。

参照している DAO のバージョンが微妙に異なっていたので、同じ DAO を使用しても
RecordsetType プロパティがない...

いったいなぜ RecordsetType がなかったりするのでしょうか?
いろいろとググってみたりしているのですが、RecordsetType があるのが当然のようで。。。
199名無しさん@そうだ選挙にいこう:2011/02/04(金) 20:06:47
"並べ替えの解除" ("フィルター/並べ替えの解除"ではない) の msoControlButton faceID は何になりますか?
200名無しさん@そうだ選挙にいこう:2011/02/06(日) 13:29:45
久々に知恵袋に回答したらこの扱いだよ・・・
ttp://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1455061619
201名無しさん@そうだ選挙にいこう:2011/02/06(日) 14:12:49
>>200
別名「知恵遅れ」って言われているんだっけ、そこ。
念のため聞いておくけど、ベストアンサーじゃないよねw
202名無しさん@そうだ選挙にいこう:2011/02/06(日) 15:33:01
AllowBypassKey と同様の機能で非公開のプロパティname接頭語があるんだぜ
最初14文字の接頭語は決まってるが残りは自由に決められる
教えてほしい人は居るかい?
203名無しさん@そうだ選挙にいこう:2011/02/07(月) 10:33:54
>>200

        /⌒  ⌒\         ━━┓┃┃
       /(  ̄)  (_)\         ┃   ━━━━━━━━
     /::::::⌒(__人__)⌒:::: \         ┃               ┃┃┃
    |    ゝ'゚     ≦ 三 ゚。 ゚                       ┛
    \   。≧       三 ==-
        -ァ,        ≧=- 。
          イレ,、       >三  。゚ ・ ゚
        ≦`Vヾ       ヾ ≧
        。゚ /。・イハ 、、    `ミ 。 ゚ 。

204名無しさん@そうだ選挙にいこう:2011/02/07(月) 17:38:38
>>200
できちゃったのかよw
205名無しさん@そうだ選挙にいこう:2011/02/08(火) 14:05:01
これは質問者の悪戯としか思えないな
206名無しさん@そうだ選挙にいこう:2011/02/09(水) 22:03:51
MukkuZMukuさんは質問したら答えてくれるんかなぁ、勿論、ロハでアクセス教えて貰おうなんて気はなくて、ブログの記載事項に限った質問なんだけど。
どこにメールすれば良いのかなぁ。
207名無しさん@そうだ選挙にいこう:2011/02/10(木) 00:09:55
すみませんが質問です。
【 システム環境  】 Windows Server 2003, Access 2007
【 VBAが使えるか 】 はい、一応
【 VBAでの回答  】 可
【 検索キーワード 】 思いつくキーワード全て試しました。

質問:
一つのAccessで定期的に指定の別のAccessがオープンしているかどうか確認して、
もし開いていなかったら、オープンするという操作をしたいんです。
ttp://support.microsoft.com/kb/285822のような方法で別のファイルの確認ができれば
良いのですが、分からないです。
間違って同じものを二つオープンする事を極力避けたいんです。
以上、よろしくお願いします。
208名無しさん@そうだ選挙にいこう:2011/02/10(木) 03:00:07
>>207
リンク先のコードで
Set cn = CurrentProject.Connection

cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=accessファイルのフルパス;"
cn.Open
てな感じにすれば状況が取得できるべな。どう使うかはお好みで。

>>206
コメントしておいてくれたらいい。なんらかリアクションはすると思う。
期日とか返答の約束ができないだけですわ。古い記事については役に立てないかもしれない。
そもそも、記事の内容はいい加減だし。
と、裏のおじいちゃんがつぶやいてた。
209名無しさん@そうだ選挙にいこう:2011/02/10(木) 03:04:54
>>208
おお、すばらしい。試して見ます。どうも有り難うございます。
210名無しさん@そうだ選挙にいこう:2011/02/10(木) 07:39:24
実際の仕事でAccessを使えば幅が広がる事はわかっているのですが、
習得が面倒で、なんとなくExcelで済ましちゃう。
そんな状態が何年も続いています。

今年こそはと、今無性にヤル気になっています。
どなたかAccess習得にオススメのeラーニングをご教授下さい。

今はAccessで8万件のテーブルを作り、Excelのピボットテーブルで分析する
そんな中途半端な初心者です。
211名無しさん@そうだ選挙にいこう:2011/02/11(金) 14:08:21
テーブル上のテキスト型のフィールドをコントロースソースにしてコンボボックスで表示します.
フィールドサイズを50→255に上げて長文を入力する.
それをコンボボックスで表示しようとするときに「フィールドサイズが大きすぎます」と怒られます.
コンボボックスを新たに作成すると怒られないので,既存のコンボボックスのフィールドサイズを変更すればいいと思われます.
その変更の仕方がわかりません.どうしたらいいのでしょうか?
212211:2011/02/11(金) 14:10:14
あっ,解決した.すまん.無視してくれ.
213名無しさん@そうだ選挙にいこう:2011/02/11(金) 16:20:44
エクセルのデータをアクセスのデータベースに入れたり、
アクセスのデータベースからエクセルに落としたりするvbaを作成したいのですが、
参考になるよい本を教えてください。
214名無しさん@そうだ選挙にいこう:2011/02/12(土) 05:43:45
>>213
本屋に足を運んで、実際に中身を確認して買ったほうがいいぞ。
俺にはよかったからといって、あなたにもいいとは限らないから。
まったくの初心者なら、何でもいいから初心者向けの本を一冊買って
最低限の用語を覚えればいい。そうすれば、あとはネットで調べ放題だ。
こういうところで質問するときにも、コミュニケーションが取れるしね。
215名無しさん@そうだ選挙にいこう:2011/02/13(日) 21:26:27
Access2010でアプリケーション作ったのですが、オプションで起動時に開くフォームをメニューフォームに指定してポップアップ最大化で開いています。
メニューフォームが開かれるまえに、ごく短時間ですがアクセスのみっともない画面が表示されます。リボンとかナビゲーションウインドウとかも見えてみっともないです。
アクセスのアプリケーション画面を見せないでメニューフォームを開かせることは可能ですか?
216名無しさん@そうだ選挙にいこう:2011/02/13(日) 23:01:20
>>215
ショートカット使って最小化で起動したらいいんじゃね?
もしくは、君の思うみっともないAccessを使わない。
217名無しさん@そうだ選挙にいこう:2011/02/13(日) 23:20:41
有難うございます。でもショートカットで最小化しても、ユーザーがタスクバーのアイコン触ったら元の木阿弥ですよね。
218名無しさん@そうだ選挙にいこう:2011/02/14(月) 02:52:18
>ユーザーがタスクバーのアイコン触ったら元の木阿弥ですよね。
ポップアップ使うからそんなことなるんだよ
219名無しさん@そうだ選挙にいこう:2011/02/14(月) 19:36:21
>>215さん
コマンドラインオプション
( /runtime とか?)
220名無しさん@そうだ選挙にいこう:2011/02/14(月) 21:14:19
VBSで該当mdbを非表示で起動するとか。
221215:2011/02/14(月) 22:14:35
皆さん色々と有難うございます。
従業員に入力させる為に、テーブルを見せないように二重起動にしてます。
他も弄らせたくないために、ポップアップ最大化での運用にしました。
ので、オプションやVBSでの直接起動ができませんです。
パーソナルデータベースAccessの限界なんでしょうか、桐だとオーバーラップフォームで容易にできるのですが。
根本的に考え直します。
222名無しさん@そうだ選挙にいこう:2011/02/14(月) 22:18:08
ショートカットの実行時の大きさを最小化にしておくだろ、
そしてメニュー用のフォームをpopupにしないでさ、ドキュメントタブは表示しないようにしておいて、
AutoExecでこんなの実行すればいいんじゃねって話だ
Function StartUp()
  DoCmd.NavigateTo "acNavigationCategoryObjectType", ""
  DoCmd.RunCommand acCmdWindowHide
  DoCmd.ShowToolbar "Ribbon", acToolbarNo
  DoCmd.RunCommand acCmdAppMaximize
  DoCmd.OpenForm "StartForm"
End Function

実行時は>>220と同じだと思うけど、最小化で起動されるからいい感じで開くんじゃねぇの?
223名無しさん@そうだ選挙にいこう:2011/02/14(月) 22:19:26
>>221
ちょっと待て。


起動時にACCESSの画面が表示が嫌
テーブルとかいじられるのが嫌

結局どれが本命なの?
後者ならAPIたたけばいいんじゃないのか。

224215:2011/02/14(月) 22:30:45
>>222
有難うございます。
> そしてメニュー用のフォームをpopupにしないでさ
以外は、同様にしています。
やっぱり、タスクバーやデスクトップにアクセスされちゃうのは防げませんかね。
KIOSKform が理想なのですが。

>>223
両方嫌なのですが。
> 後者ならAPIたたけばいいんじゃないのか。
これ、教えて頂けませんでしょうか、宜しくお願いいたします。
225215:2011/02/14(月) 22:39:07
226名無しさん@そうだ選挙にいこう:2011/02/14(月) 22:59:02
227名無しさん@そうだ選挙にいこう:2011/02/14(月) 23:20:12
むむ、見覚えあるURLだな。
ちょっと記事書いてくる
228名無しさん@そうだ選挙にいこう:2011/02/15(火) 00:13:15
うーむ、慣れないことをやってはならんと思った。じゃ、おやすみ
229215:2011/02/15(火) 08:53:03
MukkuMuku さん、有難うございます。
何か、難しいですね…。
でも頑張ってみます。
230名無しさん@そうだ選挙にいこう:2011/02/15(火) 16:02:54
【 システム環境  】 WindowsXPSP3, Access2007
【 VBAが使えるか 】 はい(ただし不慣れです)【 VBAでの回答  】 可
【 検索キーワード 】フィルタ 値集合ソース

フォームフィルタで絞り込まれたレコード群の特定の値をリストボックス
で表示させたいです。つまり、リストボックスの値集合ソースを
SELECT 値 FROM テーブル WHERE [forms]![フォーム].[Filter]
みたいな感じにしたいのですが、これではうまく動かないです。
(WHERE以下が式として認識されていないのでしょうか?)
また、フィルタが入力されていないときにWHWRE以下が空白になってしまう
ことや、FilterOnを考慮しないことも問題なのではないかと思います。
この目的のためには、どのような式あるいはVBAを書けばよいでしょうか。
また、フィルタ変更時にその変更をリストボックスに反映するには
どのようにすればよいでしょうか?
231名無しさん@そうだ選挙にいこう:2011/02/15(火) 18:13:06
>>230
フォームのフィルタ実行時イベントで

条件:[Form].[FilterOn]=True
アクション:値の代入
引数:[Forms]![form1]![ListBox1].[RowSource], "select field1 from table1"

条件:[Form].[FilterOn]=False
アクション:値の代入
引数:[Forms]![form1]![ListBox1].[RowSource], "select field1 from table1 where " & [Form].[Filter]

こんな感じでできるよ。実際のフォームとかコントロールの構成は解らないからおそらくだけど。
232名無しさん@そうだ選挙にいこう:2011/02/15(火) 18:17:18
ちょい補足忘れ
すべての場合においてうまくいくということではないからね。
値の代入でRowSourceを書き換えているということがポイントね。
233名無しさん@そうだ選挙にいこう:2011/02/15(火) 23:44:11
>>231
ありがとうございます。すごい!
234名無しさん@そうだ選挙にいこう:2011/02/16(水) 18:20:05
235名無しさん@そうだ選挙にいこう:2011/02/16(水) 22:50:48
メッセージボックスで、「はい」「いいえ」「キャンセル」
とかではなく、任意の文字を設定することって出来ますか?
インプットボックスでないとダメでしょうか?
236名無しさん@そうだ選挙にいこう:2011/02/17(木) 00:15:58
【 システム環境  】 Windows7, Access2010
【 VBAが使えるか 】 はい(ただし不慣れです)
【 VBAでの回答  】 可
【 検索キーワード 】print ページ毎の合計
アクセスで伝票を作っているのですが、ページ毎の合計を、
ページヘッダーに出力するときの書式で悩んでいます。

ページヘッダーに出力させる方法は、なんとかprintを使って
出来たのですが、数字にカンマを入れて、なおかつ、右揃えという書式にする、
というところで詰まってしまいました。
textAlignは試してみたのですが、動きません。
どうぞよろしくお願いします。
237名無しさん@そうだ選挙にいこう:2011/02/17(木) 02:59:35
>>235
テキストボックスでもいいし、任意のキーが押されたらというのなら
表示すらいらない。
ループさせて任意のキーが押されたらブレイクするだけ。
DoEvents必須。
238237:2011/02/17(木) 04:23:32
テキストボックスじゃなくて、自作フォームな。
何を書いているんだか。
239名無しさん@そうだ選挙にいこう:2011/02/17(木) 09:58:14
普段、Excelでデータを加工して資料を作るぐらいしか経験がなく、Accessは未体験の
初心者です。
現在Excelで作った部品管理台帳があり、WindowsXPのファイル共有で事務所・工場・倉庫の
3台のパソコンから開いているのですが、同時に入力はできません。
ブック共有をかけると、同時入力も可能にはなったのですが、時々ファイルが壊れたり、
入力したデータの更新がうまくいかなかったりします。
そこで、ネットで調べたり勉強本を読んで、Accessならパソコンにインストール済みだし、
初心者でもなんとか作れそうだという気はしています(無料のMS SQL Server Expressは
私には荷が重そうなので諦めました)。
作り方として、ネットを見ながらA案とB案というのを考えてみたのですが、Accessに詳しい
ヒトから見てどちらがお勧めでしょうか?

 ※ A案とB案 http://up3.viploader.net/pc/src/vlpc006331.jpg

個人的には、スキルの低い我が社の人間が触ることを考えると、Accessよりは使用経験が
あるExcelを使うB案のほうが良さそうにも見えるのですが、倉庫と工場で同じレコードを
同時に変更しようとしたらどうなるのか?とかも良くわかりません。
両方作って比較するだけのパワーもないので、「こっちがお勧め」という方にトライして
みようと思います。
よろしくお願いします。
240名無しさん@そうだ選挙にいこう:2011/02/17(木) 10:39:13
>>239
A案かな。
Excelで入力させると、大抵修正が必要になるのでやめておいたほうがいい。
ただし、フォームを作らずテーブルに直接入力とかを考えいているのならB案のほうがまだましだ。
同時に同じレコードに更新すると、良くて警告、最悪はDB破損でデータがぶっ飛ぶ。
同じレコードを同時に更新する可能性が高いのなら排他処理を考える必要がある。
それほどかち合わないというのなら、非連結にするとかで更新時のみ接続するようにするだけでも
同時更新の可能性は減る。


241名無しさん@そうだ選挙にいこう:2011/02/17(木) 14:49:51
Access 開発者用リファレンス
NavigationPane オブジェクト

NavigationPaneObject は、ナビゲーション ウィンドウを参照するために使用します。ナビゲーション ウィンドウとは、データベースを開いたり新規に作成したりしたときにデータベース オブジェクトが表示される領域です。
バージョン情報
追加バージョン: Access 2010

使用例
次のコード例は、Application オブジェクトの NavigationPane プロパティを使用して NavigationPane オブジェクトへのアクセスを取得し、ナビゲーション ウィンドウに表示できるカテゴリの数をイミディエイト ウィンドウに出力します。
Visual Basic for Applications
Debug.Print Application.NavigationPane.Categories.Count
   ↑↑
おれの、Access2010 でこれが機能しないんだが、メンバーが見つからないとか何とか
何か変?
他の人は機能してる?
242名無しさん@そうだ選挙にいこう:2011/02/17(木) 16:35:58
>>241
実装されてないってことよ。
http://msdn.microsoft.com/en-us/library/ff841286.aspx
243名無しさん@そうだ選挙にいこう:2011/02/17(木) 17:03:41
なんてこったい、未完成品かよ
244名無しさん@そうだ選挙にいこう:2011/02/17(木) 17:05:47
つーか、2010βでは VBAで直接 Navigationpane.Visible = False とか出来たんだが…
245名無しさん@そうだ選挙にいこう:2011/02/17(木) 21:48:06
>>239

A案のほうが良いと思いますが、アクセス開発中は
B案で進めざるを得ないと思います。
ある程度出来上がったところで利用者と相談しながら修正を加え
段階的にA案へもっていくほうが良いと思います。

いきなりA案を導入すると、あなたが大変になります。
利用者のスキルが高くないのであれば、なおさらです。

使いにくいだの、エラーだので時間がとられますし
開発・修正の苦労って、周りの人には良くわからないので
逆にあなたの評価が下がってしまうことも。

ご参考まで。
246名無しさん@そうだ選挙にいこう:2011/02/18(金) 08:16:49
>>208さん、教えて下さったおかげで、毎日の生活が楽になりました。
なんか嬉しくなったので再度お礼したくなりました。有難うございました。
247名無しさん@そうだ選挙にいこう:2011/02/18(金) 11:12:41
>>240
ありがとうございます。
フォームは作ろうと思っています。

>>245
なるほど。
利用者のことまでは考えていませんでした。
段階的にできたところまでをレビューして、利用者の意見も取り入れながら
作っていこうと思います。

248名無しさん@そうだ選挙にいこう:2011/02/18(金) 18:59:51
質問です。GPLなコマンドラインアプリや、DLLをAccessから呼び出して使う場合、Accessのソースを公開する必要はあるのでしょうか。
249名無しさん@そうだ選挙にいこう:2011/02/18(金) 21:11:00
バカですか?
250名無しさん@そうだ選挙にいこう:2011/02/18(金) 21:17:19
もちろんです
251名無しさん@そうだ選挙にいこう:2011/02/19(土) 00:32:24
>>248
そのAccessが動いているWindowsのソースも公開する必要があります
252名無しさん@そうだ選挙にいこう:2011/02/19(土) 02:27:36
>>248
DLL を使う場合はソースの公開が必要。

コマンドラインアプリについては場合によるので分からない。
GPL アプリと密に連携してて、それがないと成り立たないようなプログラムの場合は公開が必要だろうし、
互いに独立していて単に呼び出すだけなら非公開で良いはず。この辺りはプログラムの内容による。

「単なる集積」と「二つのモジュールを一つのプログラムに結合すること」の違いは何ですか?
http://www.gnu.org/licenses/gpl-faq.ja.html#MereAggregation
私の独占的なシステムに、GPLで保護されたソフトウェアを組み入れたいのですが、それは可能ですか?
http://www.gnu.org/licenses/gpl-faq.ja.html#GPLInProprietarySystem
253名無しさん@そうだ選挙にいこう:2011/02/19(土) 11:30:59
>>237
ありがとうございます。
自作フォームをメッセージボックスに見立てて
表示させるということですね。
勉強になりました。
254名無しさん@そうだ選挙にいこう:2011/02/19(土) 20:13:19.09
>>252
バカですか?
255名無しさん@そうだ選挙にいこう:2011/02/19(土) 23:11:48.28
>>248
勝手に使っても、改造しても、ぶっ壊しても、自由で何の義務も必要もないよ、何も考えなくて良いぞ
他者に二次配布するなら考えてね
256248:2011/02/20(日) 12:22:04.43
同梱配布は考えていません。しかし、このGPLなexeがあれば、DOSバッチをはさんで、実行すると、機能が追加されますと記述するつもりです。

wikipediaのここを見る限り、明確に違反とは書かれていませんが。

ttp://en.wikipedia.org/wiki/GNU_General_Public_License
Communicating and bundling with non-GPL programs

By contrast, pipes, sockets and command-line arguments are communication mechanisms normally used between two separate programs.

それに、「Courier-MTA」とか「qmail」はGPLだけど、これと通信するOutLookとかは、ソースを公開する必要はあるのでしょうか。。
257248:2011/02/20(日) 12:30:39.41
>>252
ありがとうございます。
DLLは使いません。GPLなCLIアプリをDOSバッチを経由して使うつもりです。
しかし、それがないと書くアプリ自体の機能が成立しないわけではなく、悪まで機能が追加されるという点を謳うつもりです。
お騒がせして申し訳ありません^^;。
258名無しさん@そうだ選挙にいこう:2011/02/20(日) 12:34:25.26
バカですか?
259名無しさん@そうだ選挙にいこう:2011/02/20(日) 15:22:57.73
OpenCurrentDatabase でタンタイムモードで開く方法はありますか?
260名無しさん@そうだ選挙にいこう:2011/02/21(月) 19:55:45.22
【 システム環境  】 Windows7, Access2010
【 VBAが使えるか 】 はい(ただし不慣れです)
【 VBAでの回答  】 可
【 検索キーワード 】グループ毎のヘッダーとフッターの出力

アクセスで会計システムを作っています。
毎日レポートで、現金・口座毎のその日までの累計と、その日のそれぞれの
動きを印刷したいと思っています。

ただ、日によっては現金のみのレコードだったり、何もレコードが無い場合もあります。
そういう場合でも、すべての現金・口座が一覧に表示されるようにするにはどうしたら
良いでしょうか。どうぞよろしくお願いします。

以下、例です。

 現金
 会議費 10000円
 事務費 20000円
■現金合計 1500000円(累計)

 口座1
 事務費 5000円
■口座1合計 1000000円(累計)

 口座2
■口座2合計 112000円(累計)

261名無しさん@そうだ選挙にいこう:2011/02/22(火) 11:13:58.68
下記のコードで、今まで[地図表示]ボタン押下でIEが起動して住所のGoogleMapが表示できていたのですが、
いつの間にか、IEは起動してもアドレスバーとタブに下記DispGoogleMapのURLが表示されるだけで、空白ページが出るだけになってしまいました。
更新(F5)すれば、正常に地図が表示されます。もしかしたらMicrosoftUpdateしたのが原因かもしれません。
以前の様に、ボタンクリック後すぐ表示出来るように対策ご存知の方がいたらお願いします。
※WinXP SP3, Access2003, IE8
※普段はIEでは無く別のブラウザを利用してます。
----------------------------------------------------------------------------
Private Sub 地図表示ボタン_Click()
  DispGoogleMap = "http://maps.google.co.jp/maps?f=q&hl=ja&q=" & Me!住所 & "&z=17"
  Me!地図表示ボタン.HyperlinkAddress = DispGoogleMap
End Sub
----------------------------------------------------------------------------
262名無しさん@そうだ選挙にいこう:2011/02/22(火) 11:32:56.53
MSの地図サービスを使ってください
263261:2011/02/22(火) 17:16:04.95
>>262
bingでちょっとやってみましたが、文字化けしてうまく機能しませんでした。
出来ればGoogleでお願いします。

また、既定のブラウザはIEにしていないのですが、(インターネットオプションで確認)
>>261の記述ではAccessからはIEが起動します。
別のブラウザが起動するように変更するにはどうすれば良いのでしょうか?
264名無しさん@そうだ選挙にいこう:2011/02/24(木) 17:50:22.80
>>263
Access2007でしか試していないがこれで既定のブラウザでgoogle mapが開いた。

Private Sub 地図表示ボタン_Click()
Shell ("rundll32 url.dll,FileProtocolHandler ""http://www.google.co.jp/maps?near=43.529385,142.196388&z=10""")
End Sub
265261:2011/02/24(木) 19:05:43.66
>>264
わぁ、ありがとうございます!
以下の記述で、普段使っているブラウザで表示され、希望していたベストの動作になりました!!(^-^)/

Private Sub 地図表示ボタン_Click()
  Shell ("rundll32 url.dll,FileProtocolHandler ""http://maps.google.co.jp/maps?f=q&hl=ja&q=" & Me!住所 & "&z=17""")
End Sub
266名無しさん@そうだ選挙にいこう:2011/03/04(金) 00:22:00.61
            (~)
.            γ´⌒`ヽ
.   ___     {i:i:i:i:i:i:i:i:} あたためますか?
   |[\_398]|\ ( ´・ω・)
   | ̄ ̄ ̄|  | (:::::::::::::)
   |___l./ ̄ ̄ ̄ ̄ ̄■/|   lヽ,,lヽ
   | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|.  |  (ω・  ) おながい
   |                 .|.  |  し   i    します
   |__________|./   しーJ

.   ___
   |[\1398]|\               (~)
   | ̄ ̄ ̄|  |             γ´⌒`ヽ
   |___l./ ̄ ̄ ̄ ̄ ̄■/|   {i:i:i:i:i:i:i:i:}lヽ,,lヽ
   | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|.  |  (  ´-ω)ω- )
   |                 .|.  |   (:::::::`つ⊂´ i
   |__________|./    し─J.し─J

267名無しさん@そうだ選挙にいこう:2011/03/05(土) 21:06:08.68
【 システム環境  】 Windows7, Access2007
【 VBAが使えるか 】 一応
【 VBAでの回答  】 可
【 検索キーワード 】ACCESS 並び替え イベント
フォームで並び替え(昇順で並び替え、降順で並び替え)を行ったあとに
特定の処理をさせたいと思っています。しかし、そのままずばりのイベント
がみつけられないので他のイベントで代用するなどの方法を御存知であれば
ご教授いただけないでしょうか。
268名無しさん@そうだ選挙にいこう:2011/03/05(土) 21:48:35.19
>>267
特定の処理ってなに? 
もし処理がかち合うのなら、レコードソースで並び替えるとか。
269名無しさん@そうだ選挙にいこう:2011/03/06(日) 17:28:17.22
Sub Tudukereyareba()
 昇順で並び替え
 特定の処理
End Sub
270名無しさん@そうだ選挙にいこう:2011/03/06(日) 23:04:34.25
>>268-269
ありがとうございます。
>>269だとTudukereyarebaを呼び出すボタンなどから処理をさせる必要があります。
フォームの機能で並び替え(メインメニューの並び替えリボンとか
カラムの右クリックポップアップメニューの並び替えメニューアイテムを選択)
を行った時に、その処理(OrderByプロパティの変更)を検知して、
特定の処理(例えば、「並び替えされました」というメッセージ表示)を
させたいのです。
271名無しさん@そうだ選挙にいこう:2011/03/06(日) 23:58:50.72
>>270
Me.OrderByで並び替えの状態がわかるだろ。
アクティブ時あたりにぶち込めばいいんじゃねーの?
272271:2011/03/07(月) 00:45:34.10
アクティブ時じゃ駄目だね。レコード移動時にしよう。
273271:2011/03/07(月) 01:16:02.65
連投スマン。
嘘だった。寝て頭を休ませてから考え直すorz
274271:2011/03/07(月) 01:28:35.14
ちなみにタイマー時イベントを使えば、多分悩む必要はない。
275名無しさん@そうだ選挙にいこう:2011/03/07(月) 08:37:02.31
組み込みのリボンやショートカットにはそのような機能は無いので、それらを自分で作った方が早いです。
276名無しさん@そうだ選挙にいこう:2011/03/07(月) 08:54:13.47
Form.ApplyFilter イベントじゃだめなん?
277名無しさん@そうだ選挙にいこう:2011/03/07(月) 08:56:57.09
データベースパスワードに、セミコロンを含める方法はありませんかね?
無理矢理の方法でも良いです
278名無しさん@そうだ選挙にいこう:2011/03/07(月) 10:03:13.67
Access2003の初心者です OSはXPhomeです
フォルダ一覧名を管理する簡単なデータベースを作り
面倒なフォルダ抽出部分を下記の優秀なフリーソフトで賄ってます

LS - ファイル一覧の出力
http://www.vector.co.jp/soft/win95/util/se247619.html

Accessよりshell関数でフリーソフトを呼び出し実行
できあがったTXETファイルをインポートして利用しています

このフリーソフトにはLS.iniファイルがついていて
過去に指定したパラメータを呼び出す便利機能があります

LS.exe プログラム本体
LS.ini 設定値記録ファイル

直接LS.exeを実行すれば間違いなく過去設定がなされます
しかしAccessから実行すると
LS.iniを無視して初期状態でしか呼び出せません

現状は都度設定値を入力し直さねばならずとても面倒です
Access上からの実行させて
過去設定を反映させた起動方法ってありますでしょうか?
現在当該フォルダをエクスプローラでコール表示させ
手動実行の後、読み込み作業継続という情けない状態です

たいへんわがままな質問ですみませんが
解決方法ご存知なかた居られましたら宜しくお願いいたします
279名無しさん@そうだ選挙にいこう:2011/03/07(月) 17:58:14.76
>>276
並び替えだとイベントが発生しない。2007以降は知らないけど。
280名無しさん@そうだ選挙にいこう:2011/03/07(月) 18:27:45.53
>>278
そのLSというソフトは使っていないが、書いてある現象から想像するとカレントフォルダから
LS.iniを読み込もうとしているがShell関数から起動されるとカレントフォルダがドキュメントフォ
ルダになるので(通常、exe直接起動の場合exeのあるフォルダがカレントになる)うまく読み込
めていないんじゃないかな。
想像通りならこんな感じでできると思う。(LS.exeのフルパスがc:\ls\ls.exeとする)

Dim currentdir As String
currentdir = CurDir
ChDrive ("C")
ChDir ("C:\LS")
Shell ("C:\LS\LS.exe")
ChDir (currentdir)
ChDrive (Left(currentdir, 1))

281278:2011/03/07(月) 20:36:17.37
>>280
きちんとLS.iniファイルを読み込み動作するようになりました!!
これで面倒だった作業が省け楽になりました ありがとうございました
282名無しさん@そうだ選挙にいこう:2011/03/08(火) 01:09:39.64
>>267の状況が今一つ分かってないが、ソート時はCurrent(レコード移動時)イベントが
発生するからそこで何とかできない?OrderByプロパティが変化したかどうかとか?
ただCurrentイベントはソート時以外にも発生するから注意しないといけないが。
283名無しさん@そうだ選挙にいこう:2011/03/08(火) 01:25:18.79
>>282
それでいける。

Dim OldOrderBy As String

Private Sub Form_Open(Cancel As Integer)
OldOrderBy = Me.OrderBy
End Sub

Private Sub Form_Current()
If OldOrderBy <> Me.OrderBy Then MsgBox "並び替えされました", vbOKOnly
OldOrderBy = Me.OrderBy
End Sub

こんな感じか。昨日は一部コメント化していたのを忘れて、一人で右往左往していたw
284名無しさん@そうだ選挙にいこう:2011/03/08(火) 10:53:10.82
現在、ファイルメーカーで在庫管理をしているのですが、上司がアクセスに替えたいとぬかしやがります
当方、アクセスの知識は全くないのですが、ファイルメーカーからの乗り換えは難しいでしょうか?
285SS:2011/03/09(水) 13:08:57.63
【 システム環境  】 WindowsXP, Access97
【 VBAが使えるか 】 DoCmdが少し使えます
【 VBAでの回答  】 可
【 検索キーワード 】 フォームフィルター null

普段、一つだけ作ったテーブルを使って発注の管理をしています。
発注先が何ヶ所かあるので、フォームフィルターを使って発注先ごとに
表示させ、納品日や請求書処理日の確認をしています。

いつもはフォームフィルターを使うと「発注先」というフィールド
には入力済みの発注先がプルダウンメニューで出てきて、それを選択
できるのですが、本日同じことをしたら、is null とか is not null
という選択しかできなくなっていました。

昨日、試しにクエリーやフォームを作ってみたのですが、それが影響
しているのでしょうか?(いまはクエリー・フォームとも削除済み)
また、普段通りにフォームフィルターで数箇所ある発注先を選択できる
ようにするにはどうすればいいでしょうか?

accessをexcelのようにしか使えない初心者ですが、
ご教示の程、よろしくお願い致します。


286名無しさん@そうだ選挙にいこう:2011/03/09(水) 18:48:58.39
>>285
97を持っていないからちょっと違うかもしれないが
オプションの「編集/検索」の「レコード数が次の値を超えるときは、リストを表示しない」
の値を超えているんじゃないか?
デフォ1000だと思うが、値を大きくしてみるとか。
287SS:2011/03/09(水) 20:15:42.92
>>286様、どうもありがとうございました。
ご指摘の通りに操作したところ、また復活することができました。
ご親切に感謝いたします。
288名無しさん@そうだ選挙にいこう:2011/03/09(水) 20:31:25.19
メモをタグで管理しようと思っております。
Accessでタグクラウド的な検索システムは組めますか?

メモとタグが多対多の関係になるので、
間に中間テーブルはさんで、
関連づける方法をとると、
つねにメモとタグの関係を中間テーブルで
管理し続けねばならず、
現実的ではない。
うまい方法はないかなぁと。

無理なら無理ということでお願いします。
289名無しさん@そうだ選挙にいこう:2011/03/09(水) 20:35:32.29
>>288
Access2007から複数値フィールドってあるぞ
290名無しさん@そうだ選挙にいこう:2011/03/09(水) 20:43:14.27
>>288
ま、まじすか!
調べて見ます。
ありがとう。
291名無しさん@そうだ選挙にいこう:2011/03/09(水) 22:02:29.90
うん、複数値フィールド使うとAccessの中の人が自動的に多対多をやってくれるから楽ちん
292名無しさん@そうだ選挙にいこう:2011/03/10(木) 11:11:32.48
日時型の書式で、yyyy/mm/dd hh:nn:ss ってやっても時間がゼロ詰め2桁にならないのはバグですか?
表示がズレてみっともないんですが
293名無しさん@そうだ選挙にいこう:2011/03/10(木) 18:46:43.63
>>292
テーブルのデータシートビューならOSの設定変える方法しか知らない。
コントロールパネル→地域と言語のオプション→形式タブ→この形式のカスタマイズ
→時刻タブ→時刻の形式
H:mm:ss→HH:mm:ss
294名無しさん@そうだ選挙にいこう:2011/03/10(木) 19:00:25.28
>>293
有難うございます
複数のレコードフォームですが、教えて頂いた方法で解決できました
295名無しさん@そうだ選挙にいこう:2011/03/11(金) 02:32:18.35
行と列が一定していない沢山の「表」を
データベースにためこみたいと思っています。
イメージとしては、分割フォームにして、
上のセクション(データシート)で「表」の属性を管理し、
「表」を選択できるようにして、
下のセクションに「表」が表示されるような形にしたいのですが、
いいやり方ってありますか?
アイデアを頂戴いたしたく・・・
296名無しさん@そうだ選挙にいこう:2011/03/11(金) 05:42:11.93
アクセスで、指定したWEBサイト内のリンクを辿って、全てのページの
スナップショットを撮り、HTMLソースと貼り付けられている画像ファイルを
1ページ1レコードに保存するようなアプリケーションは作れるでしょうか?

イメージとしては検索サイトのクローラーのような「リンクを辿っては保存、辿って保存・・」
という動作をさせたいのです。
297名無しさん@そうだ選挙にいこう:2011/03/12(土) 11:48:20.51
>1ページ1レコードに保存する

ここが現実的でない
それ以外はプログラムが組めるなら可能
298名無しさん@そうだ選挙にいこう:2011/03/12(土) 21:30:55.72
>>297
ありがとうございます。
数ページに渡ると管理が面倒なので1ページ=1レコードは崩したくないところなのですが、
どんな障害が予想されるでしょうか?
299名無しさん@そうだ選挙にいこう:2011/03/14(月) 11:44:15.80
Access2007のオートフォーマットでは、フォーマットを選ぶとフォームヘッダーに
イメージが埋め込まれていましたが、2010に変更したところ、テーマの選択で
フォーマットを変更しても背景色とフォントが変わるのみになっています。

テーマにはイメージが埋められていたのは無くなったという認識でいいのでしょうか?
300名無しさん@そうだ選挙にいこう:2011/03/14(月) 12:06:35.62
2010ではオートフォーマットはありません
301名無しさん@そうだ選挙にいこう:2011/03/15(火) 00:08:28.30
タブーかも知れないけど、RunSQLとExecuteどっち使うべきか質問していい?
302名無しさん@そうだ選挙にいこう:2011/03/15(火) 00:11:46.87
>>301
時と場合による
303名無しさん@そうだ選挙にいこう:2011/03/15(火) 00:28:14.12
Oracleに移行する
304名無しさん@そうだ選挙にいこう:2011/03/15(火) 22:19:21.52
昨日までF11キーでナビゲーションウィンドウが操作できたのですが、
今日になって誰かがイジってデータベース オブジェクトへのアクセスと表示ができなくなりました。
解除の方法をご存じの方、ご教授ください。

ttp://josup.xrea.jp/src/up3605.jpg
305名無しさん@そうだ選挙にいこう:2011/03/15(火) 22:23:15.34
>>304
アンタに弄られないように非表示にしたんじゃないのか?
取り敢えず、shiftキー押しながら起動してみ
306名無しさん@そうだ選挙にいこう:2011/03/16(水) 17:42:38.39
>>301
RunSQLしか使ったことないんだけど、逆にタブーとかあるのですか?
全然詳しくないので、教えて欲しいです。
307名無しさん@そうだ選挙にいこう:2011/03/16(水) 18:51:21.20
>>301
可能ならクエリ作ってExecuteだろ
仕方ない時はRunSQL、遅くなるけど
308名無しさん@そうだ選挙にいこう:2011/03/16(水) 19:01:17.20
>>306
RunSQLは非同期だから正しい結果が得られない場合がある。
309301:2011/03/16(水) 20:14:30.10
RunSQLは非同期で、例えばUpdate文で1行失敗しても
エラーを出さない、
逆にExecuteはエラーがよくでるという認識だったので、
結局どっちがいいの?
と思ったしだいなんですよ。
310名無しさん@そうだ選挙にいこう:2011/03/16(水) 20:35:26.15
>>309
RunSQLは使う機会がなかったので逆に聞くが、
309の例えで出たエラー、On Error Resume Nextで続行できないの?

311名無しさん@そうだ選挙にいこう:2011/03/16(水) 20:50:31.14
>>310
なんかエラー内容で対応する処理を書くのがめんどくさくて><
312名無しさん@そうだ選挙にいこう:2011/03/16(水) 21:00:56.90
クエリ使えるAccessで、何故にわざわざSQLに戻して処理するのかと小一時間
マゾヒストかと
313名無しさん@そうだ選挙にいこう:2011/03/16(水) 21:43:04.99
>>312
VBA使い始めると「クエリを使うなんてどういうマゾ?」になるけどね。
30とか40個クエリがあって、中には多段クエリや
使われていないトラップクエリが存在したり・・・修正が地獄。
自作の初期作品ですら、修正できるか疑わしいw
314名無しさん@そうだ選挙にいこう:2011/03/16(水) 21:50:18.77
使い捨てなら同じだけど、何度か使うならQueryDef作れよ
315名無しさん@そうだ選挙にいこう:2011/03/17(木) 19:41:07.45
access2007/winxp/vba可
メインform>サブform>サブサブformという構成で、それぞれ別テーブル、別リンクフィールドで連動しているフォームがあります。
サブサブformに直接新規入力すると、サブformのデータが未入力状態になってしまうのを解消する方法はありますか?
316名無しさん@そうだ選挙にいこう:2011/03/19(土) 08:53:15.58
【 システム環境  】 WindowsXP, Access2007
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】(以下のHPを参考にしています。一通り手順に習って同じように練習してうまくいっています。)
http://www.mahoutsukaino.com/ac/access2007/index.htm

取引している会社の車両のナンバーを入力すると次の列に会社名が自動で入力されるようにしたいと思っています。
特定の会社は複数台所有している場合もあるし、一台だけの会社もあります。
また、取引実績のない初めての車両も存在します。
その場合は、会社名は空欄で表示したいです。
「会社マスターテーブル」
会社ID(主キー) 会社名
001 ○○商事
002 ▲▲建設
「車両マスターテーブル」
会社ID 車番
001 1111
001 2222
002 3333
これらをクエリで以下のように。
それぞれのテーブルの「会社ID」同士を結合させて
フィールド: 車番 会社名
テーブル: 車両マスター 会社マスター
以上の設定でクエリを表示すると
車番 会社名
1111 ○○商事
2222 ○○商事
3333 ▲▲建設
となりますが、新しいレコードの車番欄に任意の数字を入力しようとすると
入力ができません。また、たとえば「5555」を「1111」に訂正しても会社名が変更されません。
ACCESSは初めて使います。
よろしくお願いいたします。
317名無しさん@そうだ選挙にいこう:2011/03/19(土) 17:07:18.96
エース-x none.msp  って何よ?
318名無しさん@そうだ選挙にいこう:2011/03/19(土) 23:26:16.92
【国際】たんすから謎の音、通報した女性が赤面するような“ある物体”が出てくる  ドイツ
別スレッドへのリンク(タイトル情報なし/ニュース速報+板)


1 名前:ちゅら猫 ◆CHURa3Ewlc @ちゅら猫ρ ★[sage] 投稿日:2010/03/06(土) 17:17:14 ID:???0
★たんすから謎の音、通報した女性が赤面 ドイツ

【3月6日 AFP】ドイツ西部のボーフム(Bochum)で、自宅で「不審な音」が
聞こえるという女性の通報があり、現場に警官がかけつけたところ、音の正体が
バイブレーターだったという出来事があった。当局者が5日語った。

声明によると、その不審音は非常に大きく、電話ごしにもはっきりと聞こえたため、
警官が「犯罪現場」に急行した。

警察の発表によると、「警察官は女性の了承を得て、音を発している洋服たんすを
開いた。衣類の下からバッテリー駆動する非常にプライベートな物体が発見された。
自動的に電源が入ったものとみられる。女性の顔はみるみるうちに真っ赤になった」という。

その後警官は女性に「よい夜を」と告げて立ち去ったという。

ソース:AFP
http://www.afpbb.com/article/life-culture/life/2706247/5449934
319名無しさん@そうだ選挙にいこう:2011/03/20(日) 17:15:39.53
ラベルにアクセスキーを設定してラベルのクリックイベントが発動するようにしたいのですが,仕様上可能でしょうか?
一般的にはラベルのアクセスキーはラベルと関連づけられたテキストボックスへのフォーカス移動の機能があるので,不可能なのでしょうか?
320名無しさん@そうだ選挙にいこう:2011/03/20(日) 22:19:27.29
クリックイベント自体をどうやって作成するつもりか知らんが
可能か否かでいうと可能
321名無しさん@そうだ選挙にいこう:2011/03/20(日) 23:04:45.33
テキストボックスをラベルのように見せかければいいんじゃね?
322名無しさん@そうだ選挙にいこう:2011/03/21(月) 10:31:00.19
>>320
ラベルのクリックイベントは普通に作れますよ。プロパティーを見てみてください。
市販されているmdbファイルなんですけど、ラベルにクリックイベントが設定されているのです。
何のためにボタンでなくラベルにクリックイベントを設定するのでしょうね。?

>>321
テキストボックスにクリックイベントを設定するのですね?

私はボタンを追加してラベルと全く同じクリックイベントを設定して使うことにしましいたが、ラベルにクリックイベントを設定する目的を知りたいですね。
323316:2011/03/22(火) 08:12:00.46
別の掲示板に移動いたします。
マルチポストになりますので
この質問は無視してください。
失礼いたしました。
324名無しさん@そうだ選挙にいこう:2011/03/22(火) 23:01:59.49
>>322
すまん。
どうやってと言ったのは、AccessのGUIで作成するのか、vbaで作成するのか聞いたつもりだった。
vbaだとラベルのクリックイベントを作るのは特に難しいことじゃないから。

ラベルにクリックイベントを作る優位性は特に無いから、もしかしたらクリックイベントじゃなくて、
マウスのポインタがラベルの上を通った時にイベントが発生してるんじゃないかな?
325名無しさん@そうだ選挙にいこう:2011/03/22(火) 23:19:47.14
>>324
他のフォームが開くクリックイベントなんですよ。私にも何も目的があってそんな仕様にしているのかさっぱりわかりません。            
たぶん、最初は単なるラベルだったのが、他のフォームを開くためにボタン代わりにしたのではないかと想像しています。

ところで、アクセスキーはラベルには設定できないということでFAでしょうか?
326名無しさん@そうだ選挙にいこう:2011/03/23(水) 00:22:33.42
>>325
なんか混乱してきたけど、
まずラベルにアクセスキーは設定できる。要するにショートカットキーでしょ?
ラベルのアクセスキー(Alt+○)でフォーカス移動以外のイベント作成は、おそらく無理。
ボタンとかだと可能。
327名無しさん@そうだ選挙にいこう:2011/03/23(水) 16:37:43.60
初歩的な質問で申し訳ないです

テキストボックスの内容を更新したら
連動して、チェックボックスのチェックをはずす

ということをしたいです
よろしくお願いします
328327:2011/03/23(水) 17:12:01.93
すみません
あせってテンプレ読まずに質問してしまいました
【 システム環境  】 WindowsXP, Access2007
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 可
【 検索キーワード 】 テキスボックス 更新 連動 チェックボックス

よろしくお願いします
329名無しさん@そうだ選挙にいこう:2011/03/23(水) 23:54:46.56
>>328
テキストボックスの更新後処理でチェックボックスの値を変えるだけ。

Private Sub テキスト0_AfterUpdate()
Me.チェック4.Value = False
End Sub

Me.チェック4.Value = Nullでもいいが、個人的にはFalse一択。
あとは応用。連結ならOldValueプロパティを使って変更チェックしたり
非連結なら規定値とかグローバル変数を使って変更チェックとかね。
330名無しさん@そうだ選挙にいこう:2011/03/24(木) 00:44:08.29
>329
ありがとうございました
助かりました
331名無しさん@そうだ選挙にいこう:2011/03/27(日) 17:24:27.77
Access2010
前スレで報告および御相談した、レコード数が多い複数レコードフォームで、ESCキーUndoするとスクロールしてフォーカスを失う件
Hot Fix で治りますた
332名無しさん@そうだ選挙にいこう:2011/04/04(月) 13:30:17.35
windows7 access2010を使用しています。
データベース初心者です。

商品(物品)
商品(サービス)
という2つのテーブルがあります。

それらを管理する売上管理を作っているのですが
売上管理内において
「商品種別」フィールドのBOOL値で対象となる商品テーブルを選び
「商品ID」に対象となる商品のキーが入るようにしたいのです。

ようするに「商品ID」フィールドに異なる2つのテーブルのキーが入る
仕組みがデータベース(Access?)の仕様として許されるのかを知りたいです。

どうぞよろしくお願いします。
333名無しさん@そうだ選挙にいこう:2011/04/07(木) 22:38:21.53
【 システム環境  】 Windows7, Access2010
【 VBAが使えるか 】 勉強中
【 VBAでの回答  】 可
【 検索キーワード 】 フォームウィザード オブジェクト 値代入 キー変更

アクセス2010で初めてアクセスに触れました。以前はエクセルで顧客管理していました。
まずフォームウィザードで顧客メンテ画面(単票形式) を作りました。
顧客コードだけではユニークにできない構成なので、顧客コード・顧客区分・都道府県コードをキーにしています。

VBAの参考書やサイトで情報を調べながら検索画面を別に作って、顧客メンテに処理区分とキーを渡して変更・追加・削除が
できるようにしたいと思います。
ところが検索画面から検索結果をメンテナンス画面のキー項目にセットしようとすると
「実行時エラー -2147352567 このオブジェクトに値を代入することはできません」というエラーになってしまいます。

顧客メンテ画面を単独で表示したときに最初に表示されるレコードのキーを変更しようとするために起きるエラー
らしいのですが、どうすればこのエラーを出ないようにしてメンテナンスできるでしょうか。
334名無しさん@そうだ選挙にいこう:2011/04/08(金) 18:08:33.24
>>333
まず宣言部と止まった前後のコードを晒してみ。
335名無しさん@そうだ選挙にいこう:2011/04/13(水) 13:16:57.14
ttp://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1022064610

ここのベストアンサー回答を行いたいのですが、
コンボボックスを選択すると

実行時エラー2467
指定した式で、閉じているかまたは存在しないオブジェクトを参照しています。

となり、デパックすると

Private Sub cbx01_Click()
If (Not IsNull(Me.cbx01)) Then
★Me.FSUB.Form.RecordSource = Me.cbx01
Else
' Me.cbx01 がNULL の場合の設定
End If
Me.FSUB.Form.Requery
End Sub

★の所が選択されています。
cbx01 FSUB の名前は同じにしてあります。
access2010なのですが、何処が間違いなのでしょうか。
よろしくお願いします。
336名無しさん@そうだ選挙にいこう:2011/04/14(木) 03:45:20.01
>>335
Me.FSUB.Form.RecordSource = Me.cbx01 っつーのは、サブフォームFSUBにSourceObjectが
すでに存在していることを前提になってるから、存在しない≒FSUBに何も表示されていない状態で
RecordSourceを設定しようとしてもSourceObjectがないのだからそのエラーになる。

クエリを直接サブフォームに表示するならば、
Me.FSUB.SourceObject = "クエリ." & Me.cbx01

サブフォームに表示しているフォームのRecordSourceを変更するなら
Me.FSUB.Form.RecordSource = Me.cbx01 でいいけど、選んだクエリをRecordSourceとするフォームが
サブフォームのSouceObjectになっていなければどうにもなんだろう

2010だから、似たようなメソッドでBrowseTo/SetFilter/SetOrderByってのもあるから、用途によっては選択しなされ
337名無しさん@そうだ選挙にいこう:2011/04/14(木) 09:42:15.57
>>336
ありがとうございます。出来ました!

会社命令で使い始めてもうすぐ一ヶ月
要求ばかり多くて苦闘しています。(^_^;)
338名無しさん@そうだ選挙にいこう:2011/04/15(金) 22:42:13.09
【 システム環境  】 Windows7, Access2007
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 Access2007 VBA UserControl Visible ADP VBS CreateObject
Mdbファイルを起動すると、デフォルトフォームが表示され、
画面のボタン操作でレポートを印刷するような、VBアプリライクな仕組みを作成中です。
ところが、フォームの背後にアプリのウィンドウが表示されたままで不格好なので
これをどうにか非表示にして、画面上にフォームだけが見える状態にしたいです。

ExcelVBA であれば、Application.Visible で容易に実装できますが、Accessだと
オートメーション経由でなければ無理っぽいのですが、CreateObject で起動しても
Mdbをオープンするメソッドが無いので実現できません。実現する方法はありますか?
339名無しさん@そうだ選挙にいこう:2011/04/16(土) 01:31:02.53
なんか難しく考えてるみたいだけど
「access フォームだけ表示」でぐぐれば解決ですお
340名無しさん@そうだ選挙にいこう:2011/04/16(土) 08:34:00.19
API

341名無しさん@そうだ選挙にいこう:2011/04/16(土) 09:00:48.96
2010にすれば標準でOK
342名無しさん@そうだ選挙にいこう:2011/04/17(日) 18:32:03.10
俺の頭はまだ2003のままだお2100えらいことなっとるのお・・・
343名無しさん@そうだ選挙にいこう:2011/04/18(月) 01:36:40.11
確かにすごそうだ
344名無しさん@そうだ選挙にいこう:2011/04/18(月) 04:25:51.66
そのころ、わしゃ死んどるな
345名無しさん@そうだ選挙にいこう:2011/04/18(月) 08:55:32.09
MukkuMuku さんへ
以下の件、解らないのでヒント下さいませ
----------------------------
2010/10/25
異常系の操作や動作ではなく可能で、各機能の仕様内での設定を重ねると可能になってしまう。
346名無しさん@そうだ選挙にいこう:2011/04/19(火) 13:54:20.61
んと、
Runtime環境であってもフォームをレイアウトビューにすることが可能で編集できちゃうって
ことだけ思い出した。ViewsModeMenuをリボンで追加してみるとすぐに確かめられるはずだよ。
そして
accdeで製品版環境配布の場合、アプリケーションパーツ使えるようにしてるとだめだよーんって。
Runtime関係ないけど、ついでに思い出した。
347名無しさん@そうだ選挙にいこう:2011/04/19(火) 14:33:08.13
ありがd
なんとなく想定外のPitFallではなさそうなので安心できました
348338:2011/04/20(水) 20:11:48.12
>>339
難しく考えてたようです・・・
ありがとうございます!
予想に反して、タスクバーをクリックしても最大化しないみたいなので、完璧でした。
349名無しさん@そうだ選挙にいこう:2011/04/20(水) 23:13:52.68
質問です
andと&はどう違うんですか?
抽出条件に「"110" and "120"」と記入するのもあれば、
「Like [地名を入力] & "*"」となることもあります
しかし↑で&をandに変えると正しく動きませんでした。
何故なのか教えて頂けるとありがたいです。。
350名無しさん@そうだ選挙にいこう:2011/04/21(木) 00:23:40.98
>>349
つ・釣りか?
マジか?
351名無しさん@そうだ選挙にいこう:2011/04/21(木) 06:35:25.79
>>350
携帯から失礼します
マジです
本当に悩んでます
352東スポ大好き:2011/04/21(木) 10:32:31.76
>>351 andは、条件文で使い、&は、文字の連結で使います
353名無しさん@そうだ選挙にいこう:2011/04/21(木) 16:27:42.38
TableAからTableBへコピーする処理に関してです。

"INSERT INTO " で大量のデータを一括にコピーをしていると、
その間はTableAへデータを登録しようとしてもオーバーフローなどのエラーが出て、
登録出来ません。

こちらをコピーの速度は(ある程度は)遅くなっても構わないので、
他の登録作業などを邪魔しない様にコピーするにはどんな方法がありますか?
登録・抽出作業はTableAにしか行いません。

今はTableAをDAOのOpenRecordSet(dbOpenSnapShot)で開き
TableBをOpenRecordSet(dbOpenTable)で開いたものへループで
コピーを試してます。
ループ内にSleepを入れて負荷を軽減しようと試みていますが、こちらでも
オーバーフローになってしまうようです。(Sleepは10msを指定)
354名無しさん@そうだ選挙にいこう:2011/04/21(木) 19:06:26.75
>>352
ありがとうございました!
355名無しさん@そうだ選挙にいこう:2011/04/21(木) 22:07:05.75
>>353
リアルタイムは無理と割り切ってファイルをコピーしたものからデータを取得。
自分で作ってもいいが、フリーのバックアップソフトとかを使えばいいだろう。
356名無しさん@そうだ選挙にいこう:2011/04/22(金) 07:12:35.21
>>353
TABLEBは、docmdでinsertしてみたら?
357名無しさん@そうだ選挙にいこう:2011/04/24(日) 15:57:36.41
表形式でデータが上の行と異なるときに色分けする方法はありますか?
たとえばこんな感じです.
A
A
B←色が変わる
B
C←色が変わる
要するにデーターが変化した場所を目視で探しやすくしたいのですがいい方法はありますか?
358名無しさん@そうだ選挙にいこう:2011/04/24(日) 16:32:15.78
359名無しさん@そうだ選挙にいこう:2011/04/25(月) 17:30:59.19
>>355
わが国のITはユーザに使用法を十分説明する時間がありません。
このため、初心者がベテランに疑問についてたずねる光景を目にすることがあります。
しかし本来は事故(情報漏えいなど)が発生した場合の責任は、
接続業者、サーバ運営者、システムを開発したエンジニアにあります。
メーカあるいは購入店にたずねるべきです。
利用者の仕事は自治(掲示板の秩序を守ること)です。助言を行ってはなりません。
素人が専門技術に言及するのは「親切」ではありません。「無責任」です。
海外のプロフェッショナルは、「私の仕事ではない」と答えるはずです。
360名無しさん@そうだ選挙にいこう:2011/04/25(月) 18:00:52.35
質問したまま逃げるのは良く無いな。
361名無しさん@そうだ選挙にいこう:2011/04/25(月) 23:57:08.45
>>357
Accessじゃ無理なんじゃないかなあ。DataGridViewなら
履歴の表示でそれとまったく同じ処理やったことあるけど
362名無しさん@そうだ選挙にいこう:2011/04/26(火) 00:10:37.44
>>353
>こちらをコピーの速度は(ある程度は)遅くなっても構わないので、
>他の登録作業などを邪魔しない様にコピーするにはどんな方法がありますか?


・誰も使ってない時間帯にコピーする
・insert into TableB (C1, C2) select C1, C2 from TableAみたいなクエリ
・オーバーフローの意味をぐぐれカス。などってなんだ、などって
・エラーメッセージを略すな。馬鹿は何も考えずスクショとってうpしろ
363名無しさん@そうだ選挙にいこう:2011/04/26(火) 01:39:37.12
A,B,C
1,2,3
1,2,3
1,2,5
2,3,4

B項目が前回値と同じで、かつC項目が違うレコード(1,2,5)を除いたデータを抽出したい。(ORDER BY A,B,Cで並び替え済み)

クエリでできますか?
364名無しさん@そうだ選挙にいこう:2011/04/26(火) 07:46:52.48
>>363
Queryじゃ無理じゃないかな。VBAなら10分位で出来るよ。
365名無しさん@そうだ選挙にいこう:2011/04/26(火) 09:03:37.55
>>363
まず、[A] & [B]でグループ化しろ
366名無しさん@そうだ選挙にいこう:2011/04/26(火) 09:36:09.62
>>361
ありがとう。
残念ですね。
367名無しさん@そうだ選挙にいこう:2011/04/26(火) 20:54:55.09
A,Bでグループ化してCount>1
A,B,Cでグループ化してCount=1
を組み合わせるんじゃだめかな
1,2,3 の組み合わせが2件じゃなくて1件でも抽出したいんならだめか
368名無しさん@そうだ選挙にいこう:2011/04/27(水) 15:34:37.49
まだ入門書を読んだだけで自分で設計、製作の経験のない素人ですので
こちらでご相談するにはレベルが低すぎるかと考えたのですが、
もし、よろしければ助け船を頂けますと嬉しいです。

ver: Access2007
OS: 7
VBA: 未経験

作りたい物:約200件の顧客へ毎日の品物の配達個数記録と履歴の閲覧、
それの一ヶ月の集計に基づいた請求書と領収書の簡単な作成です。

各お客様に毎日おしぼりの配達をしているのですが、その毎日の配達本数を
顧客ごとに登録して各顧客の単価に合わせて月一で集計して請求書と領収書を
発行する作業をPCにうとい人間でも簡単にできるような物がつくりたいです。
いままではエクセルで単純な集計していたのですがアクセスの勉強を兼ねて
制作したいと考えています。よろしければオススメのサイトや書籍、
まず勉強すべきことなど御座いましたら、教えて頂けませんでしょうか。
言葉足らずで申し訳ありませんがよろしくお願いします。
369名無しさん@そうだ選挙にいこう:2011/04/27(水) 23:21:29.51
顧客(顧客ID, 名称, 住所)
配達(配達ID, 顧客ID, 配達日, 配達数)
請求(請求ID, 顧客ID, 請求日, 請求額)
領収(領収ID, 請求ID, 領収日, 領収額)

この基本だけは崩すな。
370名無しさん@そうだ選挙にいこう:2011/04/28(木) 11:47:41.43
>>369
教えて頂けましてありがとうございます。

ご指摘頂きました各テーブル&フィールド(顧客には単価フィールドも作成)を制作し、
次いで顧客リストに100件程の登録と各ID(主キー)のリレーションシップを設定しました。
配達にもデータを数件入れてみました、次は請求額等に一ヶ月分の本数×単価の
数字を顧客ごとに出す設定をしなくてはいけないのだと考えていますが、
その考えが正しいのか また、どのように設定するべきかが分かっておりません。

入門書、参考書等も3冊ほど購入してみたのですが自分のしたい事と本の内容を
うまく照らし合わせる事が出来ていません。
申し訳ありませんが助け船を出して頂けませんでしょうか宜しくお願いします。
371名無しさん@そうだ選挙にいこう:2011/04/28(木) 14:28:16.87
配達データ入れたなら
配達テーブルを基に
顧客ID 配達日 配達数×単価 を追加クエリで
請求テーブルの
顧客ID 請求日 請求金額 へそれぞれ流し込む
まぁ、請求へ転送済みのチェックはいるがな

 
372名無しさん@そうだ選挙にいこう:2011/04/28(木) 16:11:34.31
>>369
こうした場合、顧客の住所が変わったらどうするん?

・今まで対応したデータの住所も変わるが構わない。
・今までの顧客とは異なっても良いので、新たに顧客IDを割り振る。
・別途ログデータとして吐き出しておく。
 例:配達ログ(配達ID, 顧客ID,名称,住所, 配達日, 配達数)
・その他
373名無しさん@そうだ選挙にいこう:2011/04/28(木) 16:17:29.30
顧客の名前が変わったらどうするん?
374名無しさん@そうだ選挙にいこう:2011/04/28(木) 23:32:21.67
請求作成
--------------------------------------
INSERT INTO 請求 ( 顧客ID, 請求日, 請求額 )
SELECT
顧客.顧客ID,
[請求日を入力してください] AS 請求日,
顧客.単価 * SUM(配達数) AS 請求額
FROM 配達
LEFT JOIN 顧客 ON 配達.顧客ID = 顧客.顧客ID
WHERE
配達.配達日 Between [開始日を入力してください] And [終了日を入力してください]
GROUP BY 顧客.顧客ID, 顧客.単価

このアクションクエリを実行すれば日付を入力して請求を作れる。
これをレポートで印刷する。
375名無しさん@そうだ選挙にいこう:2011/04/29(金) 00:02:30.61
実際は、期間も一緒に保存しておかないと後で涙目だろうな。
376名無しさん@そうだ選挙にいこう:2011/04/29(金) 11:13:22.79
>>371
教えて頂けましてありがとうございます。

新規クリエにて顧客ID 配達日 配達数 単価の項目を作り
配達本数は月の合計として作りました。
「配達数×単価」のフィールドを作り「請求額:[単価]*[配達本数]」としたところ
配達本数が顧客IDの合計値で表示されず配達IDごとに表示されてしまいます。
当然といえば当然なのかもと思っていますがどうすれば思ったとおり表示で出来るのかが
分からず悩んでおります。
また、「請求テーブルの顧客ID 請求日 請求金額 へそれぞれ流し込む」の部分も
どのようにして流し込んで良いのか分かっておりません。
私の不勉強で申し訳ありませんがもし宜しければ教えて頂ければ幸いです。

>>374
教えて頂けましてありがとうございます。

恥ずかしながら私はまだアクションクエリという物を理解していない為、
どのように扱って良いか分かっておりませんが、
勉強してご利用させて頂きたいと考えております。
その際にまた、程度の低い質問をさせて頂くことが有るかもしれませんが、
お気を悪くせずご助言頂けましたら幸いです。よろしくお願いします。
377名無しさん@そうだ選挙にいこう:2011/04/29(金) 11:45:11.48
素人すぎて話にならんわ。SQLの基本くらいできるようになってこい。
現場で使えるSQLって本がいいぞ。それを完全に理解してからまたこい。
378名無しさん@そうだ選挙にいこう:2011/04/29(金) 21:58:16.63
>>377
答えたく無い奴は答えなければいいだけ
たまたま通りすがったがお前見たいのがスレの一番の害毒
そんなにレベル高いならこんな所こなくていいよw
379名無しさん@そうだ選挙にいこう:2011/04/29(金) 22:10:29.70
>>378
たまたまw
380名無しさん@そうだ選挙にいこう:2011/04/29(金) 22:33:52.86
Access2010って一万ちょっとで買えるんだね。
過去のバージョンはもっと高かったように記憶してたんだけど機能的に大きな変化あったの?
381名無しさん@そうだ選挙にいこう:2011/04/30(土) 02:29:05.55
>>376
あ〜もうそれぐらいの管理ソフトなら作ってあげるから
それ見て勉強して、使いやすいようにカスタマイズしたらいいんでね

本見て一からあれこれ悩むより実践的で覚えも早いかもね
あ VBAはたぶん使うから勉強してね

捨てアド作ったから良かったら連絡を
[email protected]
382名無しさん@そうだ選挙にいこう:2011/05/01(日) 09:37:43.53
なんだこいつ。キモイな
383名無しさん@そうだ選挙にいこう:2011/05/01(日) 11:47:25.47
キモイといわれたので作ってあげるのやめます
384名無しさん@そうだ選挙にいこう:2011/05/01(日) 12:40:59.81
そこを何とか
385名無しさん@そうだ選挙にいこう:2011/05/01(日) 21:32:01.80
えー、どうしようかな・・・
386名無しさん@そうだ選挙にいこう:2011/05/02(月) 00:20:27.74
キモイ奴がデーターベースを作るスレと聞いて飛んできました
387名無しさん@そうだ選挙にいこう:2011/05/03(火) 17:09:06.39
>>385
先っちょだけでも。。。
388名無しさん@そうだ選挙にいこう:2011/05/03(火) 23:35:36.45
ちょっと舐めるだけなら、良いよ・・・
389名無しさん@そうだ選挙にいこう:2011/05/04(水) 00:12:05.59
ヲトゥィントゥィンをナメラレタときってどんな感じになるんでそうか?
390名無しさん@そうだ選挙にいこう:2011/05/04(水) 01:56:36.47
TempVars使えばよいのになっ!と、愚痴をこぼす。
391名無しさん@そうだ選挙にいこう:2011/05/04(水) 06:41:09.33
・・・っ!
392名無しさん@そうだ選挙にいこう:2011/05/04(水) 22:13:08.54
【 システム環境  】 WindowsXP, Access2003
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 ACCESS 日付 関数

エクセルのDATE関数と同じことをACCESSでやるにはどうしたらいいでしょうか

ある処理の実施日の年度末を取得したいのですが、実施日から月をみて
その年度を取得するところまではいったのですが、
エクセルでのDATE(年度+1,3,31)みたいな関数の処理の仕方が分からなくて困っています

393名無しさん@そうだ選挙にいこう:2011/05/04(水) 23:36:59.63
>>392
DateSerial(Year(DateAdd("m", 9, 実施日)), 3, 31)
394名無しさん@そうだ選挙にいこう:2011/05/04(水) 23:56:04.99
ありがとうございますm(    )m
395名無しさん@そうだ選挙にいこう:2011/05/05(木) 03:37:50.77
フォーム内のアイテムの配置について質問です。

Accessのフォーム上でコントロールをきれいに並べる方法
ttp://okwave.jp/qa/q2014807.html
↑この解決方法ですと隙間なしに並んでしまいます。

フォームウィザードを使用して"表形式"を選択して自動的に
作ったフォームでは少し離れて配置されます。
どのようにしたら簡単に少し離して配置できるんのでしょうか?
396名無しさん@そうだ選挙にいこう:2011/05/05(木) 08:26:01.37
>>395
・縦をきれいに揃えたい場合は「左位置」を合わせる
・横をきれいに揃えたい場合は「上位置」を合わせる

コントロール1・2・3・4があって

12
34

って並びだとすると、「1と3」の左位置を同じにして
「2と4」の左位置を (1か3の左位置の数値)+(1か3の幅の数値)+α(αは好みの隙間幅)
で揃えればいいんじゃないかな?
上位置も同じような考え方でいいと思うんよ

的外れだったらごめんちょ
397名無しさん@そうだ選挙にいこう:2011/05/05(木) 09:32:37.05
コントロールレイアウトで余白とスペース調整する
398名無しさん@そうだ選挙にいこう:2011/05/05(木) 10:15:25.70
自分はこういうことかな?って思ったけど、違ったらごめん。

2003
書式→左右(上下)の間隔
2010
フォームデザインツール→配置→左右(上下)の間隔を均等にする

例)全部を選択して、左右の間隔を均等に。
A B  C  D → A B C D
399名無しさん@そうだ選挙にいこう:2011/05/05(木) 10:44:24.06
コントロールを全部選択してレイアウトに追加→表形式
余白とスペースの調整
400名無しさん@そうだ選挙にいこう:2011/05/05(木) 18:43:17.83
リレーションシップ設定したフィールドで
表示値のフィールドを自分で設定するのってどうやるの?
連結列の設定はプロパティにあるんだけど
同じように表示列 みたいなのがあって欲しかったんだが見つからない
401395:2011/05/06(金) 06:45:03.67
>>398さんのおっしゃるメニューにある間隔の調節でイケました
よくメニュー項目を見てませんでした。
ほかの方の書き込みも役立ちましたありがとうございます。

現在手書きである記入書類をAccessのフォーム、レポートで作ろうと思っています。
販売契約書?みたいなものなのですが案外、検索しても出てこないものなんですね。
.xlsよりもいまは.pdfになっちゃってるのが多いのかな。
トレース用にイメージを透過配置しておけたら便利だなと思いました。
ま、そんなにシビアなものじゃないからいいかな。
402名無しさん@そうだ選挙にいこう:2011/05/06(金) 12:17:19.22
>>400
連結列ってことは、コンボボックスかリストボックスだよな。
値集合ソースで表示させたいフィールドを追加して、列数を必要なだけに変更するんだ。
そして、列幅でサイズを変更したまえ。0;1.5cm;3cmとか。0の部分は表示されないという算段だ。
403名無しさん@そうだ選挙にいこう:2011/05/06(金) 19:38:54.69
Accessは使えるが、VBA全くダメという人の入門書でおすすめはないでしょうか?
404名無しさん@そうだ選挙にいこう:2011/05/06(金) 19:53:24.26
はじめてのAccessVBA 決定版
405名無しさん@そうだ選挙にいこう:2011/05/07(土) 16:34:02.06
>>402
>列幅でサイズを変更したまえ。0;1.5cm;3cmとか。0の部分は表示されないという算段だ。
うひょーこんな仕様なのか
表示されるのは0cmじゃない一番左のフィールドになるのか
これはUI観てるだけじゃ気付けねえ
406名無しさん@そうだ選挙にいこう:2011/05/08(日) 16:11:27.15
住所DBを作っているのですが、
テーブルには以下のように住所データが入っています
住所1(都道府県) 
住所2(市区町村)
住所3(その他)
住所4(番地)

カラム通りに区切っていないデータが含まれる住所を検索する時、
どのようにSQLを作ったらいいでしょうか?


例)
品川 が含まれるデータの場合
住所2や住所3に含まれる場合も抽出したいです。

住所1     住所2         住所3    住所4
愛知県   名古屋市港区    品川町    5-4-3
東京都    品川区        南品川    1-2-3
407名無しさん@そうだ選挙にいこう:2011/05/08(日) 16:26:50.85
どうせインデックス効かないんで

[住所1] & [住所2] & [住所3] & [住所4] Like "*品川*"
408406:2011/05/08(日) 17:12:58.09
>>407

WHEREの所で & で連結すればいいんですね。
無事に抽出できました。


ありがとうございました!

409名無しさん@そうだ選挙にいこう:2011/05/08(日) 17:22:05.84
ACCESS2010ってマルチコア対応してないですか?
処理が遅いのにCPU占有率1コアしか高くなってなくて
410名無しさん@そうだ選挙にいこう:2011/05/09(月) 17:31:07.45
うん
411名無しさん@そうだ選挙にいこう:2011/05/10(火) 20:33:03.82
フォルダ1→フォルダ2→フォルダ4→データベース
という感じの位置関係でデータベースを使っています。
現在、フォルダ4をフォルダ3にリネームしようと思っています。
しかし、現在データベースには外部アプリとの連携などの関係でリネームすると不具合が起こります。
うまくリネームする方法はないでしょうか?
412名無しさん@そうだ選挙にいこう:2011/05/11(水) 20:58:50.88
Accessの学ぶにはどの本がいいですか?
vbaも含めて
413名無しさん@そうだ選挙にいこう:2011/05/11(水) 22:01:34.49
図書館行くと結構本あるから片っぱしから借りてくりゃいいんじゃね
1から学ぶならどうせ一冊じゃ足りないし
基本は昔からあんま変わってないし
414名無しさん@そうだ選挙にいこう:2011/05/11(水) 22:38:04.64
>>411お願いします。
415名無しさん@そうだ選挙にいこう:2011/05/11(水) 22:58:23.60
>>414
お願いも何も、設定しなおすしかどうしようもないんじゃないの。
initファイルとかで参照先が設定しているのならともかく。
416名無しさん@そうだ選挙にいこう:2011/05/12(木) 13:29:38.21
>>412
SQLが基本だよ。
VBAとかAccessの小技なんて枝葉末節だよ。
417名無しさん@そうだ選挙にいこう:2011/05/12(木) 18:46:08.61
>>416
そうですよね
私もその結論に同意です
記述式のSQLドリルみたいなのにしましょうかね
418名無しさん@そうだ選挙にいこう:2011/05/12(木) 19:12:13.04
クエリがあるAccessで、あえてSQLに戻る必要ないだろ
419名無しさん@そうだ選挙にいこう:2011/05/12(木) 19:16:18.05
Access使う上でSQLとVBAどっち知らないと困るかっつうと
後者だと思うが
420名無しさん@そうだ選挙にいこう:2011/05/12(木) 19:21:27.14
今日びVBAも要らんだろ、全部マクロで書くのが今風
421名無しさん@そうだ選挙にいこう:2011/05/12(木) 19:22:22.43
あ、知らないっつっても
Acceessでクエリ書けるくらいのSQL概念は知識としてもちろん必要だと思うが
422名無しさん@そうだ選挙にいこう:2011/05/12(木) 19:52:51.16
>>419
俺はクエリで線引いてるうちに行き詰まって、SQLの勉強を始めた。それで目の前が開けた。
VBAなんてSQLに比べたら簡単だから逆引き本かネットで調べながら書いていけばいいんじゃないかな、と思います。
423名無しさん@そうだ選挙にいこう:2011/05/12(木) 20:05:59.16
Accessがあくまでも入門で、その先でもっとDB開発の勉強をしたいのであれば、
SQLとかVBAを学んだら良いんでないの?

ずっとAccessで良いのならクエリとマクロを極めればそれでも構わないと思うけど。
424名無しさん@そうだ選挙にいこう:2011/05/13(金) 00:30:33.37
テーブル同士をキーコードでリレーションシップをつないで
各テーブルにあるデータを持ってくるのは全く重くないのですが、
テーブルを一度クエリに変換して書式変更等を加えた物同士を
リレーションシップでつなぐととんでもなく重くなるのですが回避策はありませんでしょうか?

ex id 0123456を val([id]) みたいに変換した中間クエリを作って
リレーションシップを組んだりした場合
425名無しさん@そうだ選挙にいこう:2011/05/13(金) 01:41:20.27
Accessできます、VBAできます。で時給3500ってとこか
PLSQLできます、DB設計できます。で時給5000ってとこかな
426名無しさん@そうだ選挙にいこう:2011/05/13(金) 07:29:58.63
>>423
リレーションに集合の概念とSQLが必要じゃないか
427名無しさん@そうだ選挙にいこう:2011/05/13(金) 10:39:20.69
Access2003で作成したツールですが
初回起動時に何故かツールバー(「設定」しかないもの)が表示されてしまいます。
これを表示されないようにする方法をご存知の方いませんか?
428名無しさん@そうだ選挙にいこう:2011/05/13(金) 11:16:59.77
>>424
関数を使って変換した値にはインデックスが使えないので連結は遅くなるよ。

値の変換は最後に行うか、クエリに元の値も含めておいて、それと連結すれば良い。
どうしても変換後の値で連結する必要があるなら、変換後の値をテーブルに保存しておく。
429名無しさん@そうだ選挙にいこう:2011/05/14(土) 01:13:48.58
リレーションシップに使うには関数通さない方がいいんですね。
ありがとうございました
430名無しさん@そうだ選挙にいこう:2011/05/14(土) 18:08:19.64
どなたかご教示よろしくお願い致します。

【 システム環境  】 WindowsXP Pro, Access2003
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 可
【 検索キーワード 】 Access VBA ダブルクォーテーション テキスト




・36列のカンマ+ダブルクォーテーション区切りのTXTがあります。
以下の作業をVBAかマクロで自動化したいのですが、コードサンプル
を教示いただけないでしょうか?

AccessにTXTインポート(名前任意)

24列目にフィールドを1列追加(空フィールド)

カンマ区切りのみでTXT書き出し
431名無しさん@そうだ選挙にいこう:2011/05/14(土) 21:05:20.56
TransferText acImportDelim (SpecificationName)
ALTER TABLE ADD 又はあらかじめインポート用のテーブルを追加コラム付で作っておき、そこにインポート
TransferText acExportDelim (SpecificationName)
(テーブルにインポートする場合は、開始時又は終了時に全レコード削除)
って、こんな感じかな?
432名無しさん@そうだ選挙にいこう:2011/05/14(土) 22:19:49.97
ジャストシステム、Web DBをノンプログラミングで作成できるソフトを開発
http://hibari.2ch.net/test/read.cgi/pcnews/1303827965/
433名無しさん@そうだ選挙にいこう:2011/05/14(土) 23:02:36.85
>>431
ありがとうございます、早速やってみます。
434名無しさん@そうだ選挙にいこう:2011/05/14(土) 23:42:35.37
>>430
Accessでやる必要あるのん?
435名無しさん@そうだ選挙にいこう:2011/05/15(日) 12:27:44.29
教えてください
Access2010

LocalVars!項目名 に、テキストボックス名が入っています
LocalVars!項目値 に、当該テキストボックスの値を取得したいです

ご教授くださいませ
436名無しさん@そうだ選挙にいこう:2011/05/15(日) 19:54:29.88
me!LocalVars!項目値 = me(me!LocalVars!項目名)
437435:2011/05/15(日) 22:46:46.73
localVarですのでマクロ限定です
438名無しさん@そうだ選挙にいこう:2011/05/16(月) 05:45:59.91
>>435
[Form].[Controls]([LocalVars]![項目名])
439435:2011/05/16(月) 09:56:05.31
>>438
でけた、thnx
440名無しさん@そうだ選挙にいこう:2011/05/17(火) 21:09:47.71
Access 2007で、プリンターでの印字調整をしていたのですが、
デザーンビューでは、全て項目が表示されるのですが、
急にフォームの項目が全て#NAME?の表示に変ってしまいました。
どうしたらよいか教えてください。
441名無しさん@そうだ選挙にいこう:2011/05/17(火) 22:43:08.82
>>440
プロパティのレコードソースを確認。
442名無しさん@そうだ選挙にいこう:2011/05/18(水) 14:26:06.25
やっと来たね
Office 2010 SP1 on track for late June
443名無しさん@そうだ選挙にいこう:2011/05/19(木) 01:08:34.06
あっ臭せえっす!
444名無しさん@そうだ選挙にいこう:2011/05/19(木) 04:05:59.98
IIF関数で真の時に1を指定するとなぜか文字列になってしまうんですが
数字にするにはどうすればいいでしょうか?
445名無しさん@そうだ選挙にいこう:2011/05/19(木) 04:19:27.81
>>444
EXCELのIFと同じじゃなかった?
まずどういう風に書いたか提示するのが筋だろ。
IIF(判断式,1,偽)でいいんじゃないか。
大方ダブルクォーテーションで1を囲っているのだろう。
446名無しさん@そうだ選挙にいこう:2011/05/19(木) 13:18:46.88
代入先の変数がStringになってるとか
447名無しさん@そうだ選挙にいこう:2011/05/19(木) 17:34:20.91
ACCSESS2003のMDBファイルに以下のテーブルがあります。

[TABLE1] ID,項目1,項目2,外部ID
[TABLE2] ID,データ1,データ2

SELECT * FROM TABLE2 RIGHT JOIN TABLE1 ON TABLE2.ID = TABLE1.外部ID


このSELECT文で呼び出したとき、TABLE2が新規項目だった場合に、
TABLE2に新規登録して、TABLE1の外部IDに新規登録したTABLE2のIDを入れたいです。

一度にTABLE2へ新規登録とTABLE1の更新の2つをうまくやる方法はないですか

どんなふうにやるのが良いんでしょうか?
考え方だけでも教えて頂けるとありがたいです。
448名無しさん@そうだ選挙にいこう:2011/05/19(木) 21:20:21.11
>>447
俺はDcountなりDlookupなりを使って既存チェックして、あとはVBAでガシガシ書き込んでしまうが。
449名無しさん@そうだ選挙にいこう:2011/05/20(金) 14:08:35.18
Access2003なのですが、特定のプロセスが起動しているか否かを判断する方法はありますか?
(例えばExcelが起動してる?などです)
もしご存知でしたらご教授お願いします。
450名無しさん@そうだ選挙にいこう:2011/05/20(金) 23:21:20.32
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
    ┏━┓    ┏━━━━━┓    ┏━┓    ┏━━━━━┓┏━┓  ┏━┓
┏━┛  ┗━┓┃          ┃┏━┛  ┗━┓┃          ┃┃  ┃  ┃  ┃
┃          ┃┗━┓  ┏━┛┗━┓  ┏━┛┗━━━┓  ┃┃  ┃  ┃  ┃
┗━┓  ┏━┛┏━┛  ┗━┓┏━┛  ┗━┓        ┃  ┃┃  ┃  ┃  ┃
┏┓┃  ┃┏┓┃          ┃┗━┓  ┏━┛        ┃  ┃┃  ┃  ┃  ┃
┃┃┃  ┃┃┃┗━┓  ┏━┛┏━┛  ┗━┓        ┃  ┃┗━┛  ┃  ┃
┃┃┃  ┃┃┃    ┃  ┗━┓┃   ━ ┏━┛    ┏━┛  ┃    ┏━┛  ┃
┗┛┗━┛┗┛    ┗━━━┛┗━━━┛        ┗━━━┛    ┗━━━┛
  ┏━┓┏┳┓┏━┓┏━━┓    ┏━┓        ┏━┓            ┏━┓
┏┛  ┗┻┻┫┃  ┃┗┓  ┃┏━┛  ┗━┓┏━┛  ┗━┓        ┃  ┃
┃          ┃┃  ┃  ┃  ┃┗━┓  ┏━┛┗━┓  ┏━┛        ┃  ┃
┗┓  ┏━━┛┃  ┃  ┃  ┃┏━┛  ┃    ┏━┛  ┗━┓        ┃  ┃
  ┃  ┃┏━┓┃  ┃  ┗━┛┃ ━   ┃    ┗━┓  ┏━┛┏━━┓┗━┛
  ┃  ┃┗━┛┃  ┗━┓    ┗━┓  ┃    ┏┓┗━┛    ┗━┓┃┏━┓
  ┃  ┃┏━┓┃      ┃      ┏┛  ┃    ┃┗━━┓      ┏┛┃┃  ┃
  ┗━┛┗━┛┗━━━┛      ┗━━┛    ┗━━━┛      ┗━┛┗━┛
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂♂
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
451名無しさん@そうだ選挙にいこう:2011/05/21(土) 15:02:55.88
ぐぐっても無かったので教えてください。仕事で使ってるaccessの選択クエリのデザインを見てるんですが
ふたつのテーブルから出来てて、フィールド名が 式1:***(一方のテーブルのフィールド名) だけで
そういうの式だけのフィールドがいくつもあって何を計算しているのか、何をしたいのか
よくわかりません。テーブル同士の結合線もなくグループ化もされてません。

式1: ってつくフィールド名って大体 単価*個数 みたいな感じのものしか知らないので
混乱します。データビューを見てもよくわかんないし。
ぴんとくる方いらっしゃいますか??
452447:2011/05/21(土) 17:09:52.67
>>448

ありがとうございます。

TABLE2の既存チェックして、無ければ新規登録してからでないと出来ないんですね。
もっと簡単な方法あるかと思ったんですが甘くなかったですね。
453名無しさん@そうだ選挙にいこう:2011/05/21(土) 17:11:55.56
>>451

SQLビューで見たら何してるかわかるのでは?

SELECT ○○ as 式1 〜〜〜

てなっていれば、○○の部分で推測できるんじゃないですかね
454451:2011/05/21(土) 17:46:43.99
>>453さん

ありがとうございます。SQL見ても不慣れなせいかよくわかりませんでした。
もっと勉強します。
455名無しさん@そうだ選挙にいこう:2011/05/23(月) 10:25:17.76
mdeを引数渡しで起動できる?できれば引数の取得方法を教えてください。
456455:2011/05/23(月) 11:49:48.78
自己解決しました、スレ汚しすみませ^^:
457名無しさん@そうだ選挙にいこう:2011/05/23(月) 19:40:42.32
汚れちまったぜ
458名無しさん@そうだ選挙にいこう:2011/05/23(月) 21:26:33.48
一意な数字の伝票番号をキーにして
データ入力フォームを作成しているのですが
すでに登録されている伝票番号を入力した場合にエラーメッセージを出す処理は
どのようにしたらよいのでしょうか?

いまはADOで新規データ入力後に「完了」ボタンを押したらテーブルに保存という風にしています。
459名無しさん@そうだ選挙にいこう:2011/05/23(月) 21:38:56.61
あたし、お嫁にいけない。。。
460名無しさん@そうだ選挙にいこう:2011/05/23(月) 22:05:48.90
テーブル作ったときにフィールドのプロパティに設定しておけば重複エラーメッセージはAccessが勝手にやってくれるんじゃないのか
自分で判断してエラー処理するということか
461名無しさん@そうだ選挙にいこう:2011/05/23(月) 22:34:11.22
> その時は、他のパソコンで実行するとうまくいったのです。が、そのパソコンには、Access2010がインストールされていました。この時もruntimeで実行しました。

製品版とruntimeを両方入れて使い分けることできるの?
教えてください。
あっちで聞くのは恥ずかしい質問でした。
462名無しさん@そうだ選挙にいこう:2011/05/23(月) 23:14:40.95
あっちで聞いたら、そんなことをしてはいけません!!って言ってくれるかもしれないよ。
こっちなら、自分で試せよ。
463名無しさん@そうだ選挙にいこう:2011/05/26(木) 04:50:53.86
>>461
runtimeは知らんが、97、2000の同居環境みたいになるんじゃないの。
97のmdb使用後2000のmdbが起動しなくてとかはよくあった。
それを防ぐためにショートカットで起動するexeを指定してやる必要があったと記憶している。
あえて製品を持っているのにruntimeを入れる必要はないと思うけど。

464 忍法帖【Lv=1,xxxP】 :2011/05/26(木) 10:17:03.45
ありがとう
465名無しさん@そうだ選挙にいこう:2011/05/27(金) 11:34:09.30
会計管理から顧客に紐づけて
日々の売上管理って一連の動作をAccessで作ることって可能ですか?
466名無しさん@そうだ選挙にいこう:2011/05/27(金) 17:24:37.59
access の sql で、
いわゆる正規表現での量指定子( + * ? {M,N})などに相当するものってありますか。
467名無しさん@そうだ選挙にいこう:2011/05/28(土) 21:35:00.76
尼とかで2010のアカデミックが対象者以外が
買えて、使えてしまうのですか?不公平感でいっぱいです
468名無しさん@そうだ選挙にいこう:2011/05/29(日) 07:50:27.90
>>467
スレチ。MSに言ってください。
469名無しさん@そうだ選挙にいこう:2011/06/01(水) 16:36:01.21
会社で使用しているソフトがアクセス95で作られておりwindows7への移行で使えなくなりました。
ソフトを作った会社は倒産していて、代替えのソフトは予算の都合でできるだけ控えたいと思っております。
windows98時代からソフトを使い続けていて、vistaに移行した際には互換でXPモードで使用しておりました。
windows7で互換をXPモードにして使おうと思ったところ、起動はするのですが入力をしようとするとパラメータ値を変更しろと出ます。
パラメータ値という言葉の意味すらわかりません。
こんな情報で助言は厳しそうですが誰か助けてorz
470469:2011/06/01(水) 16:46:07.59
OSはwindows7
accessはオフィス97の物
他のオフィスは2007を使っています
471名無しさん@そうだ選挙にいこう:2011/06/01(水) 18:46:14.97
VirtualPCとか仮想マシン上のXPとかで使えばいいんじゃねぇの?
472名無しさん@そうだ選挙にいこう:2011/06/01(水) 18:59:12.26
2010runtime使ってみるとか
473名無しさん@そうだ選挙にいこう:2011/06/01(水) 19:53:14.16
>>471
私のOSはホームプレミアムなのでお金をかけるのは最後の手段にしたいですorz

>>472
ランタイムインストール後にファイルを確認するとアイコンが変更されて起動したらデータベースの変換がどうのと出て駄目でした。
古いアクセスに関連付けをして起動してみましたが変わらずでした。
474名無しさん@そうだ選挙にいこう:2011/06/01(水) 20:31:14.61
> 他のオフィスは2007を使っています

じゃ、Access2007で開いてみろよ
475名無しさん@そうだ選挙にいこう:2011/06/01(水) 20:36:35.30
Runtimeって、あれ入れたらユーザにShiftキー押しながらMDB起動されて
中身丸見えになっちゃうアレは防げるの?
476名無しさん@そうだ選挙にいこう:2011/06/01(水) 20:37:07.73
>>473
フリーのVPCあるから試せばいいのに
そういうのも面倒なの?ロクに探してもいないの?
477名無しさん@そうだ選挙にいこう:2011/06/01(水) 21:46:47.85
>>475
防げるが、製品版Access購入されたら無意味だな
478名無しさん@そうだ選挙にいこう:2011/06/01(水) 23:23:01.33
大変初歩的な質問で情けないですがaccess2007を使っています。
商品テーブルにID、名前、値段というフィールドを作り
1 いちご 100等とデータがあります。
そのデータをテキストボックスに入れて検索ボタンを押すと
結果が表示というようにしたいのですが
手順としてはフォームウィザードでテキストボックスとボタンを作り
Me.Filter = "名前 = '" & テキストボックス & "'"
でレコードの抽出だと思うのですが、表示がどのようにすればいいのでしょうか?
初歩的すぎて申し訳ないですがよろしくお願いいたします。
479名無しさん@そうだ選挙にいこう:2011/06/02(木) 00:24:45.09
>>476
金かけたくないって書いてあんじゃん
ライセンス違反のXPイメージを使う方法を勧めてるのか?
480名無しさん@そうだ選挙にいこう:2011/06/02(木) 08:07:03.94
>>479
恥ずかしいw
481名無しさん@そうだ選挙にいこう:2011/06/02(木) 08:08:22.37
>>474
レスありがとうございます
2007でも勿論だめでした。

>>476
XPはメーカー添付の物しかありませんので使えません。
482名無しさん@そうだ選挙にいこう:2011/06/02(木) 18:11:51.16
Win98+AC95 これは大丈夫で
Vista+(XPモード)AC97 これも大丈夫

Win7+(XPモード)AC97 起動はするけど、なんか要求される
Win7+AC2007 これもダメで
Win7+ランタイム2010と2007 これもダメぽい
WinXPを持ってない

Win7+AC2007でShift押しながら開いてmdbファイルの中身を覗いたりもできないのかな?
・・・と思ったけど、そんな事も思い浮かばないみたいだから
傷口を広げる前におとなしく金払って業者に頼んだ方がいいかもね
483名無しさん@そうだ選挙にいこう:2011/06/03(金) 00:40:27.25
>>480
何が?
484名無しさん@そうだ選挙にいこう:2011/06/03(金) 06:05:37.79
>>483
最後の手段しか残されていないってことでしょ
485名無しさん@そうだ選挙にいこう:2011/06/03(金) 08:12:46.43
>>482
関数を変えれば解決するのかと思い開いてみましたが何に着手していいかわかりませんでした

>>484
最後の手段とは仮想PCでしょうか
486名無しさん@そうだ選挙にいこう:2011/06/03(金) 08:31:52.68
>>485
> >>482
> 関数を変えれば解決するのかと思い開いてみましたが何に着手していいかわかりませんでした

中身見れるんじゃん
487名無しさん@そうだ選挙にいこう:2011/06/06(月) 13:50:30.00
開発環境がWindows7 64bit Access2007でクライアントがWindows7 32bit版 Accessランタイムです。
64bitの方にはoffice2007と2010が共存しています。
最近、クライアント側でADO接続するコードのCurrentProject.Connectionの部分で以下のエラーが出ます。
「クラスはオートメーションまたは予測したインターフェイスをサポートしていません。」
なんとかこのエラーを回避する方法はないでしょうか?
DAOですべて書き直せばいいとは思うのですが、いかんせん場所が多くて・・・。
対処方法があればいいなと思って相談させていただきました。
488名無しさん@そうだ選挙にいこう:2011/06/07(火) 16:58:30.44
Access2003 WinXPSP3の環境での事です。

自分はありえないと思っているのですが、利用者がそうと主張しているので原因を追究中のものがあります。

フォームにコンボボックスを設置しています。
内容としては、コンボボックスで選択された値をデータテーブルに保存するだけです。

■フォーム
レコードソース:データテーブル

■コンボボックス
コントロールソース:フィールドA
集合体ソース:テーブル/クエリ
値集合ソース:マスターテーブル
入力チェック:はい

[利用者がいう事]
マスターのデータが勝手に変わる。
再現性は無し。
2年利用して今までに2,3度起きた。
直接テーブルを操作する事は無い。


なんらかでバグってデザインモードになったりするなどして、マスター側のデータが
変わる(変えれる)事ってあるのでしょうか?
489名無しさん@そうだ選挙にいこう:2011/06/07(火) 17:00:56.69
日本語で頼む
490名無しさん@そうだ選挙にいこう:2011/06/07(火) 20:21:53.89
>>487
開発環境がWin7SP1で配布先がWin7SPなしってことじゃねぇの?
491名無しさん@そうだ選挙にいこう:2011/06/07(火) 20:50:40.05
リッチテキストフィールドを設定した場合、画像とかpdfとか貼ることはできますか?
492491:2011/06/07(火) 20:52:23.01
ちなみにAccess2010です
493名無しさん@そうだ選挙にいこう:2011/06/07(火) 21:58:09.64
困っています。助けてください。
AccessでパラメータクエリのINSERT文を作成し、
AccessVBAからパラメータを指定し、実行しようと考えています。

ADODBを使用しており、
パラメータクエリのSELECT文は実現できます。
パラメータ無しクエリのINSERT文は実行できます。
ですが、パラメータクエリのINSERT文の実現方法が分かりません。
実現方法を教えて下さい。

―――――――――――――――――――――
Access2000を使用しています。
パラメータクエリのINSERT文は、
Accessのクエリを直で実行すると正常に動作します。
プログラム上(VBA)から実行できません。
494493:2011/06/07(火) 22:07:03.75
<追記>

パラメータクエリ(INSERT文):
INSERT INTO D_水着 VALUES ([商品名], '1');

ADODB.CommandのParametersは、
SELECT文以外には対応していないようでした。
495493:2011/06/07(火) 22:12:00.56
>>492
実現⇒実行
誤字です。
496名無しさん@そうだ選挙にいこう:2011/06/08(水) 05:19:40.13
>>488
データがぶっ飛んで文字化けとか。
フィールド名とかにヤバイ文字を使用していると環境によってはエラーメッセージがでることもなく、
いきなりデザインモードで開いたりすることがあった気がする。
どうせなら確実にそうなればいいのに、動いたりしているから発見が遅れたりするんだわな。
497名無しさん@そうだ選挙にいこう:2011/06/08(水) 11:33:01.11
>>493

"INSERT INTO D_水着 VALUES (" & [商品名] & ", '1'); "
とかにしても駄目なの? つか、VBA上でパラメータクエリにこだわる必要はないと思うが。
独自に入力画面を作ったほうが細かいコントロールができるし見栄えもいいし。
498名無しさん@そうだ選挙にいこう:2011/06/08(水) 18:25:51.45
WindowsXP
Access2003

フォーム「01_0A」・・通称A
フォーム「02_0B」・・通称B

AのボタンからBを開き、BのForm_Load()でAのボタンをEnabled = Falseにしようとしているのですが、
Private Sub Form_Load()
Forms!01_0A!Edit_btn.Enabled = False
End Sub
このコードを書くと、「01_0A」の「_」の部分にカーソルが合わさり「不正な文字です」とエラーが出ます。
サブフォームにフィルターをかける時も同じことが起こり、いじっていたら原因がよく解らないまま治ってしまったのですが、何か分かる方いませんか?
499名無しさん@そうだ選挙にいこう:2011/06/08(水) 19:52:54.07
数字で始まる名前は良くないんじゃね?
500名無しさん@そうだ選挙にいこう:2011/06/08(水) 21:25:42.46
フォームなら頭にfrmって付けちゃうな・・・
501名無しさん@そうだ選挙にいこう:2011/06/09(木) 10:04:29.28
グワッハッハッハ
まさかまさかこの俺が勝ち組になる日が来るとは
まもとな会社への就職は全部失敗
スーツ着て「上場企業に通ってます」的に15km離れた図書館に偽装出勤する毎日
子供時代から唯一の親友・貯金通帳の残高はリーマンショックで離散
心の支えだった彼女もなんか急に携帯不通でこの絵画のローンはやっぱり俺が払うの?

そんな俺が
まさか9980円でML110G6を買って勝ち組になれたとは!
取り合えず引き落とし日までに通帳に9980円入金できれば俺のものになる
502498:2011/06/09(木) 10:09:36.42
>>499
先頭の01_0の部分をフォーム名から取り除いたところ、うまくいきました。
先頭に数字が入ってしまうと、ダメなのですかね。

数字でフォームの並び順を固定したかったのですが、アルファベットでやることにします。
ありがとうございました。
503名無しさん@そうだ選挙にいこう:2011/06/09(木) 13:26:21.10
だったらサフィックスにすればいいだけじゃね?
504名無しさん@そうだ選挙にいこう:2011/06/09(木) 14:53:49.09
通じないと解ってる相手に通じない単語だして…サフィックス言いたいだけちゃうんかと
505名無しさん@そうだ選挙にいこう:2011/06/09(木) 16:18:45.64
シロアリ退治の?
506名無しさん@そうだ選挙にいこう:2011/06/10(金) 19:29:50.57
初歩的なのですが
サブレポート内のレコードが二ページ以上に渡る場合、二ページ以降にメインレポートの表示がされません。サブレポートのみ。
どうすれば、二ページ以降にもメインレポートを表示できますでしょうか。

当方バージョンは2007です。
507名無しさん@そうだ選挙にいこう:2011/06/10(金) 22:54:06.75
プロパティを墨から墨まで確認せよ
508名無しさん@そうだ選挙にいこう:2011/06/10(金) 23:02:15.19
>>507
そんな。教えてくださいよぉw
509名無しさん@そうだ選挙にいこう:2011/06/10(金) 23:05:37.34
                | ̄``''- 、
                |      `゙''ー- 、  ________
                |    ,. -‐ ''´ ̄ ̄`ヽ、_        /
                |, - '´ ̄              `ヽ、     /
              /               `ヽ、ヽ   /
             _/                    ヽヽ/
           / / /   /  /  /            ヽハ
          く  / /!   |   〃 _/__ l|   | |   |  |  | | ||ヽ
           \l// / |  /|'´ ∧  ||   | |ー、||  |  | l | ヽ
            /ハ/ |  | ヽ/ ヽ | ヽ  | || /|ヽ/!  |/ | ヽ
            / |  ||ヽ { ,r===、   \| _!V |// //  .!   |
            | ||   |l |ヽ!'´ ̄`゙   ,  ==ミ、 /イ川  |─┘
            | ハ||  || | """ ┌---┐  `  / //  |
            V !ヽ ト! ヽ、    |     !    / //| /
               ヽ! \ハ` 、 ヽ、__ノ    ,.イ/ // | /
    ┌/)/)/)/)/)/)/)/)/)/)lー/ ` ー‐┬ '´ レ//l/ |/
    |(/(/(/(/(/(/(/(/(/(/│||      |\  〃
  r'´ ̄ヽ.              | | ト    /    \
  /  ̄`ア             | | |  ⌒/     入
  〉  ̄二) 知ってるが    | | |  /     // ヽ
 〈!   ,. -'                | | ヽ∠-----', '´    ',
  | \| |   .お前の態度が   | |<二Z二 ̄  /     ',
  |   | |               _r'---|  [ ``ヽ、      ',
  |   | |   気に入らない >-、__    [    ヽ      !
  \.| l.              ヽ、      [     ヽ    |
    ヽ|              \    r'     ヽ、    |
510名無しさん@そうだ選挙にいこう:2011/06/10(金) 23:28:11.64
ヘッダーフッター
511名無しさん@そうだ選挙にいこう:2011/06/10(金) 23:28:49.09
>>509
いやなAAだな

レポートでうまくいかなかったときは大抵、各セクションに用意されているプロパティを確認すればいいのでわ。
こんなところに・・・関係ないと思っていた・・・ってな所を良く見る。
512名無しさん@そうだ選挙にいこう:2011/06/12(日) 12:22:13.70
>>511
dです

確認します
513487:2011/06/14(火) 13:56:20.67
>>490
遅くなりましたがまさにこれでした。
ありがとうございました。
514名無しさん@そうだ選挙にいこう:2011/06/14(火) 20:55:05.79
このままだと来週火曜には消費税10%を政府決定するらしいです。
民主、自民とも最高幹部が増税派だから、決まれば選挙でも止められないでしょう。

震災とデフレや円高不景気の中で増税やれば大不況になる可能性が高いと思われます

不況になれば、あなたの仕事もなくなるかもしれません。
自分の為に反対しませんか?

ご意見募集 - 首相官邸 :https://www.kantei.go.jp/jp/forms/goiken_ssl.html
515名無しさん@そうだ選挙にいこう:2011/06/14(火) 23:22:24.34
増税には反対だが、そんなところに意見を出しても意味があるとは思えない。
516名無しさん@そうだ選挙にいこう:2011/06/14(火) 23:26:30.27
いや、消費税思いっ切り上げて欲しいわ、こればっかりは公平だかんね
不公平な累進課税はもう勘弁
517名無しさん@そうだ選挙にいこう:2011/06/14(火) 23:28:53.73
現行の税制改革であるならばまだ良いけどな。
単なる増税だからノーだ。

次は財務官僚言いなりの野田か谷垣が総理候補だとか、アホすぎ。
518名無しさん@そうだ選挙にいこう:2011/06/16(木) 03:40:48.74
システム内の税率値を変更しなければ
ならなくなるかもしれないから気をつけろ、おまいら。
という>>514の親切なカキコなのでした
519名無しさん@そうだ選挙にいこう:2011/06/16(木) 08:52:33.50
大丈夫だ
税率あがったら首つるしかないから
もう俺には関係ない
520514:2011/06/16(木) 20:49:01.81
http://www.garbagenews.net/archives/1778034.html

http://www.garbagenews.com/img11/gn-20110614-05.gif

消費税新設直後は税収項目の新設に加え、景気が良かった(後述)こともあり、税収が増加。
しかしそれもすぐに失速し、2年目からは減収。3年目以降は「消費税導入時点より」一般会計税収が少なくなる事態に陥る。

1997年の消費税税率アップにより、消費税税収は4兆円ほど上乗せされ、その後は10兆円前後の横ばいを維持する。
一方、一般会計税収そのものは導入直後の1997年度はやや上向きになるものの、すぐに失速。
「税率アップ以降、一般会計税収がアップ時より上回る年度は皆無」の状態のまま現在に至る。

「景気が良かった云々」を明確にするため、一般会計税収推移のみと、各年度の年度終日における日経平均株価の推移を
重ねたのが次のグラフ。
景気を表すバロメーターは各種存在するが、株価が一番身近で分かりやすく、さらには税収とも深い関係があるからだ。

http://www.garbagenews.com/img11/gn-20110614-06.gif

ややズレが生じているものの(株価は景気に先導する傾向がある。売上と利益、税収もまたズレが生じる)、株価動向と一般会計税収は
近しい動きをしているのが見て取れる。

因果関係まではこのデータからだけでは実証できないが、少なくとも相関関係は説明できるし、「企業業績が上がる」のと
「株価が上がる」「企業の利益が増えて法人税が増収する」という関係は容易に理解ができよう。

また、企業の業績アップによる収益増で、周辺にもその利益が分配されれば、さまざまな経済活動が活性化し、他の税収増も期待できる。
521514:2011/06/16(木) 20:49:37.70
これら二つのグラフを見て「経験則として」把握できるのは、基本的に「消費税をアップしても税収全体は増加しない」こと。
税率を上げればそれだけ経済活動が縮小萎縮し、市場での金周りが悪くなるのだから、結果的に「利益に対して」
かけられる税収が減るのは当然の話といえる(経済促進を推し量るために「経済特区」と称し、さまざな優遇税制措置を取るという、
逆のパターンを考えれば理解は容易くなる)。言い換えれば「消費税を上げて税収をアップし、その差額で●×をすると言ったな、あれはウソだ」というあたりか。

では何故消費税を上げる必要があるのか。表向きは昨今の論議にもあるように、「何かに充てる税収を確保するため」。
しかし一つ目のグラフにおける消費税税収の動き「10兆円前後の横ばいを維持」の動きを見れば分かるように、
「景気動向にほとんど左右されない、安定税収源を確保するため」と考えるのが道理といえる。

もっとも日常社会の実情経験や、上記2グラフの動きを見れば分かるように、消費税の導入・増税は大抵において
経済を委縮させ、他の部門の税収を減退させてしまう。

ナントカの一つ覚えでは無いが、「税収が減った、ならば増税だ」では、自らの首だけでなく、自分の未来と自分らの子供たちの
首まで絞めてしまいかねないことに、十分留意する必要があろう。

税率を上げる方が考えとしては簡単ではあるが、むしろ経済の活性化を促し、社会全体の利益を拡充させ、
そこからの収益増を期待した方が、全体的には、そして中長期的にもプラスの面が多い。

無い物からしぼりとるより、あるものから受け取る方が、健全なのは言うまでも無いのだから。
522名無しさん@そうだ選挙にいこう:2011/06/17(金) 17:12:25.35
フォームにレコードソースを設定し、レコードソースから取れる値を元にコンボボックスの初期値を変更したいと考えています。
フォームに表示するレコードは、呼び出し元からidをOpenArgsで渡すことで解決します。

Me.RecordSource = "SELECT * FROM A WHERE id = " & Me.OpenArgs & ";"
Me!cmb1 = Me!cmb1.ItemData("Bの値")

最初は上記のように設定したのですが、当然エラーが発生しました。
レコードソースから取り出す「Bの値」を利用して、コンボボックスの初期値を設定する方法はありませんでしょうか。
523522:2011/06/17(金) 18:06:46.15
自己解決しました・・・
ItemDataでないと初期選択させることができないと思い込んでいました。

Me!cmb1 = "Bの値"

としたら、無事に選択してくれました。
524名無しさん@そうだ選挙にいこう:2011/06/18(土) 08:54:02.81
システム環境  】 WindowsXP, Access2000
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 可
【 検索キーワード 】 フォーム リストボックス 絞り込み 選択

初心者です。テーブル入力用のフォームを作成しています。リストボックスで値集合ソースのクエリビルダの抽出条件で絞り込みまではできました。再クエリもできて、リストボックスに思うとおりに候補が出てくるようにはなりました。
ただ、フォーム上でそのリストボックスをクリックしないと、入力が反映されません。(テーブルは空白のまま)
候補は一つに絞られてます。毎回リストボックスのところをクリックしなくても確定させたいです。
イベントプロージャの再クエリの後にクリックするみたいなのを記述すればよいのでしょうか?

言いたいことが分かりにくくて申し訳ないです。下記みたいな感じです。

テーブル1
工種       単位

舗装       m2
伐木       本
運搬       m3

テーブル2入力フォーム
日付  出来高 数量  単位
6/18  伐木   10   本      ←フォームで伐木が選択されると単位も自動的に反映して入力したいです。
                 

525名無しさん@そうだ選挙にいこう:2011/06/19(日) 11:22:05.47
【 システム環境  】 Windows7, Access2003
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 可
【 検索キーワード 】 クエリ プロパティ ハイパーリンク 結合

外部画像(同じディレクトリ)へのハイパーリンクをクエリで作成したいと思っています。

FOLDER FILENAME EXT
.\123 0000001 jpg
.\123 0000002 jpg
.\124 0000003 jpg

このようなデータがテーブルにあり、

選択クエリのフィールドに
式1: HyperlinkPart([FOLDER] & "\" & [FILENAME] & "." & [EXT],1)
と入力したのですが、文字は出てくるものの
黒文字で、リンクされていない状態です。
どうしたら青色でリンクされるのでしょうか。

よろしくお願いいたします。
526名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:29:25.16
>>525
クエリの出力結果は青くならず、
データ型がハイパーリンクになっている別フィールドへ格納してそれを表示すれば青くなるんじゃね?
(あたりまえか)
527名無しさん@そうだ選挙にいこう:2011/06/20(月) 09:31:13.06
通貨型を左に90度倒して表示させる方法はないでしょうか?
528名無しさん@そうだ選挙にいこう:2011/06/20(月) 13:23:34.47
   ___    クルッ…   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  / || ̄ ̄|| <⌒ヽ ))  < 前に調べて、
  |  ||__|| <  丿    | できないって結論だったと思うけど。
  | ̄ ̄\三⊂/ ̄ ̄ ̄/  \___________
  |    | ( ./     /
529名無しさん@そうだ選挙にいこう:2011/06/20(月) 13:38:00.53
ACCESSのVBAって、VB.netやってたらある程度使えますかね?
530名無しさん@そうだ選挙にいこう:2011/06/20(月) 14:12:33.11
VBA自体は非常に取っつきやすい
問題はデータベースの概念を理解しているか
531名無しさん@そうだ選挙にいこう:2011/06/20(月) 14:52:09.16
>>525
文字列を合体さしてハイパーリンク型フィールドに格納して、
それを取り出すときに使うのがHyperlinkPart関数
532名無しさん@そうだ選挙にいこう:2011/06/20(月) 15:27:10.31
レポートでページ全体にわたる囲み枠を描きたいのですが角を丸くすることってできますか?
533名無しさん@そうだ選挙にいこう:2011/06/20(月) 21:04:16.05
CircleとLineで頑張るか、背景イメージでいいんじゃね
534名無しさん@そうだ選挙にいこう:2011/06/25(土) 00:42:32.41
フォームのデザインや画面変遷
みやすいフォームの作り方ってどうやって勉強してますか?

技術的な部分を解説した本は沢山あるんですが
フォームのデザイン的なものを解説したようなのは見当たりません。

どうも自分で作ったフォームは使いづらい?見づらい?ように感じてしまいます。
人の作ったフォームとか沢山みたいです。
535名無しさん@そうだ選挙にいこう:2011/06/25(土) 01:03:05.40
536名無しさん@そうだ選挙にいこう:2011/06/25(土) 05:08:22.80
537名無しさん@そうだ選挙にいこう:2011/06/26(日) 10:10:47.64
▼━質問テンプレ ━━━━━━━━━━━━━━━━━
【 システム環境  】 WindowsXP, Access2010
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 Access 2010 文字化け

http://www1.axfc.net/uploader/Sc/so/248833.jpg
DBを開けようとすると文字化けして開かないんですが
どうしたらよいんでしょう?
538名無しさん@そうだ選挙にいこう:2011/06/26(日) 14:35:48.10
そのCSVはANSI(ShiftJIS)なのか?
CSVをリンクすりゃいいだけの話じゃねぇの?
539名無しさん@そうだ選挙にいこう:2011/06/26(日) 18:26:21.59
ExcelVBA+AccessVBAで作成したシステム(mdbは共有サーバ内,ADO接続)が
Win7(32bit)+Excel2010環境でエクセルが落ちる現象が出ています
調べた結果、Accessのローカルテーブルに更新する際に落ちています

ただ、ほかの既存のローカルテーブルの更新は問題なく出来ます
私が後から追加したローカルテーブルの更新が出来ないです

Accessのテーブルのセキュリティは同じになっています
Accessのローカルテーブルを更新をしないような設定があるのでしょうか

WinXP+Excel2007→ OK
WinXP+Excel2010→ OK
Win7+Excel2010→ 一部NG という感じです
540名無しさん@そうだ選挙にいこう:2011/06/26(日) 19:57:20.24
DAO
541名無しさん@そうだ選挙にいこう:2011/06/28(火) 14:31:17.10
2011年06月28日
Microsoft、「Office 2010 SP1」を今晩リリースか?!
WinRumorsが、Microsoftは今週にも「Office 2010 SP1」をリリースするだろうと伝えています。

Microsoftは「Office 365」の正式サービス開始と共に「Office 2010 SP1」をリリースする事を計画しており、Microsoftの計画に詳しい情報筋によると、太平洋標準時の6月28日午前9時に「Office 2010 SP1」をリリースする予定とのこと。
(日本時間では6月29日午前2時)
542名無しさん@そうだ選挙にいこう:2011/06/28(火) 19:43:16.98
 
543名無しさん@そうだ選挙にいこう:2011/06/29(水) 09:09:28.50
2010SP1では分割フォームのフォーカス移動は改善されてますか?
544名無しさん@そうだ選挙にいこう:2011/06/29(水) 10:43:28.46
>>543
試したら、変わってた
.SetFocusで、データシート部とカード部でフォーカスが維持されるようになった
545名無しさん@そうだ選挙にいこう:2011/06/29(水) 10:49:26.80
というか2007時の挙動に戻った
546 忍法帖【Lv=2,xxxP】 【東電 92.2 %】 :2011/06/29(水) 17:07:11.66
Access 2010 のデータシートビューで数値フィールドにフィルタをかけるとき
複数の数値を or で繋ぎたい時はどうやればいいの?
547名無しさん@そうだ選挙にいこう:2011/06/29(水) 19:57:21.72
フィールドラベルのところのフィルターメニュ開くか
リボンのフォームフィルタで指定すればいいんじゃねぇの?
サブフォームにするんなら、フィルタの実行/SetFilterでもいいんじゃね?
548名無しさん@そうだ選挙にいこう:2011/07/01(金) 07:03:32.29
>>546
2007まではシンプルにフィルタにorを書けばよかったのにね。
明らかな改悪だな。
549名無しさん@そうだ選挙にいこう:2011/07/02(土) 18:50:25.57
2010はカスタマイズしたプリンタのプロパティにマクロとかできなくなったの?
550名無しさん@そうだ選挙にいこう:2011/07/02(土) 19:57:35.03
2010SP1にしたら複数行のコピペが出来なくなったような…
551500:2011/07/02(土) 20:27:10.82
いや、ヘッダーのコンボボックスの更新後処理イベントが内部トランザクションに影響する仕様に戻ってたのが原因だった
そっちを弄ってOKになった
552名無しさん@そうだ選挙にいこう:2011/07/04(月) 15:31:40.07
すまぬ、Ctrl+Zを無効にするには、キートップを破壊する以外でなんとかならないもんですか?
553名無しさん@そうだ選挙にいこう:2011/07/04(月) 19:46:18.06
まぁ、きっとフォームなんだろうから、KeyDownイベントあたりで制御すればいいんじゃね?
554 忍法帖【Lv=7,xxxP】 :2011/07/05(火) 02:44:11.34
sage
555552:2011/07/05(火) 16:57:16.80
>>553
ありがとう、もうこの際それ以上戻されたくない時点でフォームをRefleshすることに致したっす。
556名無しさん@そうだ選挙にいこう:2011/07/06(水) 18:35:30.53
WindowsVISTA、Access2007です。

サブフォームにデータの一覧を表示し、さらに各データの右側に更新と削除の
二つのボタンを表示して、そのボタンを押すと更新画面や削除メッセージが
表示されるようにしたい思っています。

東京都  | 13,161,751 | 更新ボタン | 削除ボタン
神奈川県  | 9,049,500 | 更新ボタン | 削除ボタン
大阪府  | 8,862,896 | 更新ボタン | 削除ボタン
(略)

こんな感じです。
でもデータ一つ一つにボタンをつける方法がわからなくて悩んでます。
どのようにすればボタンをつけられるでしょうか?
557名無しさん@そうだ選挙にいこう:2011/07/06(水) 18:38:40.30
サブフォームはデータシートじゃなく、複数のレコードフォームで作れば良いんじゃないの
558名無しさん@そうだ選挙にいこう:2011/07/06(水) 21:00:02.83
access95から2010に安くアップデートできますか?
559名無しさん@そうだ選挙にいこう:2011/07/07(木) 01:19:56.57
2010のアップグレード対象は2000以降だぜ
560名無しさん@そうだ選挙にいこう:2011/07/08(金) 18:23:54.84
2010
自分で作ったアプリケーションパーツを開くと必ずエラーになって既存テーブルが倍に増えるんだけど
既存テーブル全てに連番着いたコピーが作成される
なんか間違えてる?
561名無しさん@そうだ選挙にいこう:2011/07/09(土) 00:16:58.72
office365とInfoPathでどうだい、Access要らないじゃん。
562名無しさん@そうだ選挙にいこう:2011/07/09(土) 09:45:01.24
既存のテーブルっつーか、アプリケーションパーツ(accdt)に含まれるテーブルがインポート
されてるっつーことではないの?
563560:2011/07/09(土) 10:16:50.01
2010
オリジナルのアプリケーションパーツ作る時に

accdb内にテーブルやフォームやクエリやレポートやが沢山あって
そのうち一つのフォームをアプリケーションパーツにしたいときに、どうやるの?
そのフォームを指定すると、>>560 みたいなことになっちゃう
564名無しさん@そうだ選挙にいこう:2011/07/09(土) 14:51:47.39
一部だけをテンプレート化することはできないから、
対象とするフォームやテーブル、モジュールだけにしてからaccdtにしないとだめさぁ。
ざっくばらんな話accdtからインポートってことだから。
参照設定とかMSysResourceテーブルの内容とかもaccdtからインポートしてしまうから
必要に応じて調整せねばですな。
そんで、単なるテンプレートにするならフォームのインスタンス化を指定しない。
565560:2011/07/09(土) 15:15:14.04
>>564
有難う
566名無しさん@そうだ選挙にいこう:2011/07/10(日) 07:22:09.25
よろしくお願いします。2003利用者です。

フォームが一番手前に来るたびにイベントを発生させることは可能ですか?
具体的には、Aというテーブルがインポートされていない場合には
フォームに「Aをインポートして」といった内容の指示が表示され、それを読んだ人が
テーブルをインポートし、その後開きっぱなしだったフォームを手前に持って来たら、
このときはAというテーブルが存在しているので先ほどの指示文は消え、別のコントロールが
現れる…といった動作ができればと考えています。

それが無理ならメッセージボックスに「Aをインポートしてから改めてこのフォームを開け」みたいな
文言を載せ、一旦自動でフォームを閉じてしまおうかとも思うのですが、
できればフォームは開いたまま、Aテーブルがインポートされたら指示文が消えるという
動きをさせたいです。よろしくお願いします。
567名無しさん@そうだ選挙にいこう:2011/07/10(日) 09:08:08.67
フォームActivateイベントでやりくりしてみたら?
568566:2011/07/10(日) 12:28:48.86
>>567
既に試したのですが指示文に変化はありませんでした。
あと「マウスクリック時」とかにも入れてみたのですが、それでも無理でした。
フォームを開いた一番最初に表示される指示文が、あとはフォームを閉じるまで続きます。

無理ですかね、無理なら諦めますがもし可能であればその方法を取り入れたいです
569名無しさん@そうだ選挙にいこう:2011/07/10(日) 22:00:10.66
2010SP1

For Each ctl In Forms(0).Section(acDetail).Controls
Debug.Print ctl.Name
Next

特定のコントロールが必ず漏れる…、なんてこったい
バグ大杉
570名無しさん@そうだ選挙にいこう:2011/07/11(月) 08:26:12.23
きちんと再現できる情報でない限りカス情報と何ら変わりがない。
571569:2011/07/11(月) 09:06:33.90
複数のレコードフォームでコントロールレイアウトにフィールドを出し入れ繰り返すと、そうなっちゃう
もう修復不可能
572名無しさん@そうだ選挙にいこう:2011/07/11(月) 11:23:26.48
商品の登録管理をしたいのですが、
複数のフォーマットのxlsやcsvの中から、必要な列のデータを
1つのデーターベースに登録していきたいです。

例えば、商品名の列や型番の列など、それぞれインポートしようとするファイルは
ばらばらの列にあります。(A2から下以降、B5下以降…のように。)

これはAccessで対応できますか?
573名無しさん@そうだ選挙にいこう:2011/07/11(月) 12:06:57.93
はい
574572:2011/07/11(月) 12:37:45.29
>>573
上司に報告をしたいので簡潔に説明したいのですが、
何か特別な機能とか必要でしょうか?インポート機能とかで簡単にできるのであれば、
問題ないと思いますが。
575名無しさん@そうだ選挙にいこう:2011/07/11(月) 23:48:18.78
>>574
インポートするデータが列名付だったら何も考える必要はない。
つか、フォーマット統一したほうが絶対早い。
フォーマット統一ができないとか抜かすようなら、現状にさほど不満がないのだろうからやるだけ無駄。
576名無しさん@そうだ選挙にいこう:2011/07/12(火) 11:57:12.26
>>575
それぞれクライアントが別で、向こうが出してくるものを受けるので、
統一は無理ですねえ・・・。それをまとめるためにAccessを検討しているので。
577名無しさん@そうだ選挙にいこう:2011/07/12(火) 12:18:28.47
じゃ、クライアント毎に変換操作作る、当たり前だが
578名無しさん@そうだ選挙にいこう:2011/07/12(火) 14:25:13.63
>>576
>>577が無難。
へい、兄弟。難しく考えるのはやめて、一歩一歩着実に行こうぜ。
まず各クライアントごとのDB構築を考えるんだ(実際に作るかは別として)。
これができてしまえば、あとは整形された各クライアントごとのテーブルから
必要なデータを引っ張ってくるだけだ。
579名無しさん@そうだ選挙にいこう:2011/07/12(火) 14:45:45.05
うちが開発している客先のEDI取り込み画面は
クライアント名が書かれたボタンが15個並んでるぜ

ええ クライアント毎の専用画面15枚作りましたぜい
580名無しさん@そうだ選挙にいこう:2011/07/12(火) 17:34:54.24
アクセスは全くのど素人です。
作り出したDBを、フォーマットの決まってるいくつかのxlsに流しこみたいのですが、
どの機能を使えば複数のフォーマットへ流しこみできますでしょうか。

(書き出し先の列などは、フォーマットによって違うので、書き出しプリセットみたいなのを保存しておきたいです。)
581名無しさん@そうだ選挙にいこう:2011/07/12(火) 21:49:26.30
>>580
1行目が列名で2行目からデータとか、列名なしで1行目からいきなりデータというのなら
それぞれのフォーマットにあわせたクエリを介してTransferSpreadsheetでエクスポート。
雛形はすでにあってデータだけをExcelに流し込みたいというのならExcelのVBAの知識が必須。
582名無しさん@そうだ選挙にいこう:2011/07/12(火) 22:03:25.77
齷齪
583名無しさん@そうだ選挙にいこう:2011/07/13(水) 12:32:05.20
>>581

>>ExcelのVBAの知識が必須。
ガーン・・・ 了解です
584名無しさん@そうだ選挙にいこう:2011/07/13(水) 18:14:05.13
2010SP1

コンボボックスのリスト外入力時に開かれる[リスト入力編集フォーム]
Ctrl+↓ 等のショートカットキーが効かない
俺だけ?
585584:2011/07/13(水) 18:34:50.09
[リスト入力編集フォーム]は、データ入力用に設定しろってことか?
586名無しさん@そうだ選挙にいこう:2011/07/15(金) 02:10:41.50
注文書入力のフォームを作ってますが、
同じテーブル設計で過去データ用(格納用)のテーブルと、入力用のテーブルに分けるのってナンセンスですか?
587名無しさん@そうだ選挙にいこう:2011/07/15(金) 17:05:19.65
すいません。教えて下さい。今Access2000を使って業務ソフトを加工してます。
総職員テーブルと各個人データテーブルのリレーションシップを個人IDを元に一対一で
作成しようとしているのですが、参照整合性の問題で作成できません。
588名無しさん@そうだ選挙にいこう:2011/07/15(金) 17:07:56.19
状況としては、総職員テーブルに各個人ID他のフィールドデータがあり、各個人
テーブルについては各個人ID他のフィールドがあります。
個人テーブルは1から10まであります。1から5テーブルまでは業務ソフト作成時に
造られた作成時に作られており、既に一対一リレーションシップが出来ているの
ですが、後から追加した6から10までのテーブルは参照整合性の問題で一対一リレー
ションシップが作成できません。
589名無しさん@そうだ選挙にいこう:2011/07/15(金) 17:10:06.65
因みに、5をコピーして6に上書きしてもできな
いのと、個人IDのレコード数も総職員テーブルと各個人テーブルで同じです。
どのようにすれば一対一リレーションシップが出来るでしょうか。
稚拙ではありますが、宜しくお願い致します。


590名無しさん@そうだ選挙にいこう:2011/07/15(金) 20:47:01.02
重複無しのインデックスをつければいいんじゃないかな

後から作成したテーブルにインデックスが作成されていないとみた
591名無しさん@そうだ選挙にいこう:2011/07/15(金) 22:22:46.73
マクロとVBA混在で開発するのはアリですか?
592名無しさん@そうだ選挙にいこう:2011/07/15(金) 22:25:56.46
片方だけで開発してたら変態
593名無しさん@そうだ選挙にいこう:2011/07/15(金) 22:28:41.03
>>591
ありかなしで問われたら「あり」なんだろう、MS的に。VBAからマクロを実行するコマンドがあることだし。
ただし、あとで絶対死ねる。
マクロを使うにしても、VBAに変換したコードをパクってVBAオンリーにしたほうが後々保守性があがる。
オブジェクトはテーブル、フォーム、レポートだけで十分だ。
594名無しさん@そうだ選挙にいこう:2011/07/15(金) 23:26:12.42
マクロでしかできないことがある。
VBAでしかできないことがある。
マクロの方が簡単に実装できることがある。
VBAの方が簡単に実装できることがある。
目的に合わせて自分で線引きをすりゃいいだけだ。
595名無しさん@そうだ選挙にいこう:2011/07/15(金) 23:32:15.02
時代の流れに付いていけない人、VBAだけで頑張る男の人って。。。
596名無しさん@そうだ選挙にいこう:2011/07/15(金) 23:37:18.13
ステキ。。。
597名無しさん@そうだ選挙にいこう:2011/07/16(土) 01:33:36.37
無能な奴が時代に流される
598名無しさん@そうだ選挙にいこう:2011/07/16(土) 13:17:54.98
最近購入した業務用ソフト、mdbなのはいいんだけど、VBAとマクロの混合w
馬鹿じゃないかと思う。マクロがVBAに勝ってる点なんて無いだろう常識で考えて。
599名無しさん@そうだ選挙にいこう:2011/07/16(土) 13:20:25.95
>>598
マクロはCで書いてある、VBAに変換するとVBAに書き戻してる
マクロの方が速いど
Chris が言ってた
600名無しさん@そうだ選挙にいこう:2011/07/16(土) 13:31:53.64
>>599
早いのかい?そうか…。しかしマクロだとメンテが面倒だよな。
Chrisにヨロシク!
601名無しさん@そうだ選挙にいこう:2011/07/16(土) 17:12:36.41
はーい くりすどーんず
602名無しさん@そうだ選挙にいこう:2011/07/18(月) 15:41:46.14
>>587です。
>>590
亀レスすいません。ご助言有り難うございました。
教えていただいたとおりテーブルを確認してみたのですが、
新しく追加したテーブルにはインデックスはい(重複なし)になってました。
結果残念ながら参照整合性を満たす事が出来ませんでした。

なぜ参照整合性を満たす事が出来ないのか本当にわかりません。
解決方法のご助言下さるよう宜しくお願い申し上げます。
603名無しさん@そうだ選挙にいこう:2011/07/19(火) 09:38:40.92
>>602
インデックスが主キーになってないんじゃない?
604名無しさん@そうだ選挙にいこう:2011/07/19(火) 17:07:58.95
>>602です。
>>603
有り難うございます。お騒がせしてすいません。
自己解決できました。レコード数は同じだったのですが、
相互に無いレコードがあり、これが原因でした。
失礼しました。
 ただ、今度は一対一のリレーションかつ連鎖更新になっている
新規に追加したテーブルにレコードが(自動で)追加されません。
どのようにすればよいでしょうか?
何度もすみませんが、どうぞ宜しくお願い致します。
605名無しさん@そうだ選挙にいこう:2011/07/19(火) 17:19:15.01
テーブル設計ってどうやって勉強したら良いでしょうか?
606名無しさん@そうだ選挙にいこう:2011/07/19(火) 17:51:20.02
>>604
勝手に追加されないだろ
あくまで「連鎖更新」な
変更したときに、一緒に変わるだけ
リレーションシップはテーブルに+が付くからおいらは使わないな

>>605
http://ja.wikipedia.org/wiki/データベース設計
プログラムと一緒で正直数をこなすしかない
センスもあるけどね
これの関連リンクもすべて目を通せば基本は抑えれるよ
607名無しさん@そうだ選挙にいこう:2011/07/19(火) 18:19:06.49
>>606
有り難うございます。
自動でレコードは追加されないのですか・・・。
追加するにはどのようにすればよいでしょうか?
稚拙ですいませんが、宜しくお願い致します。
608名無しさん@そうだ選挙にいこう:2011/07/24(日) 01:07:35.91
 他人の不幸で今日も飯がうまい!!
    +       ____    +
      +   /⌒  ⌒\ +
   キタ━━━//・\ ./・\\━━━━!!!!
    +   /::::::⌒(__人__)⌒:::::\  +
        |  ┬   トェェェイ     |
     +  \│   `ー'´     /    +
     _|\∧∧∧MMMM∧∧∧/|_
     >                  <
   /  ─ /  /_ ──┐ヽ|  |ヽ  ム ヒ | |
 \/  ─ / / ̄ /   /  | ̄| ̄ 月 ヒ | |
  ノ\ __ノ   _ノ   \   / | ノ \ ノ L_い o o

609名無しさん@そうだ選挙にいこう:2011/07/24(日) 16:08:45.97
Access2010

Q1
計算式を設定したコントロールを編集しようとすると、
ステータスバーに「…は式に基づいているので、編集できません。」のメッセージが表示されて
プウワァアーーンと警告音が鳴ります
この警告音を鳴らなくする方法はありませんか?

ソースに計算式を設定したオプションボタンのマウスクリックイベントを使いたいです
警告音が超ウザくて止めたいです
透明なコマンドボタンを重ねるとかでなく行いたいです


Q2
フォーム上の特定のコントロールだけ、右クリックメニューを出さない方法はありませんか?

同上、チェックボックスのマウスクリックイベントで右クリック時の動作を指定したいです
全部グレーアウトしている無意味なショートカットメニューが出て超ウザいです
610名無しさん@そうだ選挙にいこう:2011/07/24(日) 20:48:58.20
>609
イベントをキャンセルすればいいんじゃねの?

コンテキストメニューについては、CommnadBarオブジェクトをこさえて、EnabledプロパティをFalse。
これをコントロールのショートカットメニューバープロパティに割り当ててみれ。

修業が足りんのか?
611名無しさん@そうだ選挙にいこう:2011/07/24(日) 21:30:04.91
>>610
隊長、イベントをキャンセルについては既に修行を積んでおりますが、それでは希望を実現できておりません
無理ではないかと感じております
何か他にヒントがあればお願いします

CommnadBarオブジェクトについては修行を再開してみます
612名無しさん@そうだ選挙にいこう:2011/07/25(月) 10:11:37.49
>>609
編集ロック はい
使用可能 いいえ
で、カーソルが行かなくなるけどそれじゃだめなの?
613名無しさん@そうだ選挙にいこう:2011/07/25(月) 11:38:42.94
>612
それだとマウスイベントが拾えないんじゃねの?
>611
MouseDownイベントでDocmd.CancelEventを試したか?
614名無しさん@そうだ選挙にいこう:2011/07/25(月) 12:32:52.08
>>613
うぉ!!
MouseDownイベントに長々と書いてるコードも全部キャンセルされると思って、それだけ試していませんでしたあーー
有難うございました
615名無しさん@そうだ選挙にいこう:2011/07/25(月) 22:32:40.58
Access2010で以下の処理を行おうとしています。

Aテーブル
ID:データ1:データ2
------------------
1 :a :(null)
2 :b :(null)
3 :c :(null)

@クエリ1でID1のデータ3をSELECT(抽出条件は where ID = 1)
AAテーブルのデータ2(null)をクエリ1の結果 つまりID1 のデータ1でUPDATEを行う。NUllは全てaにする想定。
UPDATE処理にはVBAを利用し、Aテーブルとクエリ1をINNER JOINしてクエリ1の結果でUPDATE

上記の処理の場合、ID2,3のデータ2は更新されるが、ID1のデータ2だけが更新されません。
選択クエリを実行している場合、選択中のデータは行ロックされていると言う事でしょうか?
(Access97だと上記の現象は出ませんでした。また、UPDATE処理時、「3件更新します」と出ています)

対応策は在りますので、原因を教えて頂けないでしょうか。
616615:2011/07/25(月) 22:34:21.39
誤記がありました。

@クエリ1でID1のデータ3をSELECT(抽出条件は where ID = 1)

@クエリ1でID1のデータ1をSELECT(抽出条件は where ID = 1)

よろしくお願いします。
617名無しさん@そうだ選挙にいこう:2011/07/25(月) 22:35:48.01
>>615
2010SP1に汁
618名無しさん@そうだ選挙にいこう:2011/07/26(火) 23:33:32.59
これ、2010では出来ないんだけど、どうやったら良い?

http://office.microsoft.com/ja-jp/access-help/HA010282509.aspx
メモ 2 つのメニュー コマンドの間に区切り線を入れるには、その 2 つのメニュー コマンドの間の [マクロ名] 列にハイフン (-) を入力します。

619名無しさん@そうだ選挙にいこう:2011/07/27(水) 03:25:07.65
はーい、僕だよ!
それはね、サブマクロ名は半角ハイフンでいいんだけど、サブマクロが空っぽだと認識してくれないんだよ♪
だからね、空でもいいからコメント突っ込んであげるとセパレータが表示されるよ!
東京ドームシティで僕と握手!約束だよ!
620名無しさん@そうだ選挙にいこう:2011/07/27(水) 08:37:13.37
>>619
でけた、thnx
東京ドームホテルは毎月泊まる、叙々苑ミートポーツ店で焼肉食べる為に、酔って帰るのメンドクサイから
621名無しさん@そうだ選挙にいこう:2011/07/28(木) 21:13:36.16
2003で作ったやつが2007で破損していますや表示できませんってなって
中身すら見られないんですが、どうすれば良いでしょうか。教えて下さい
622名無しさん@そうだ選挙にいこう:2011/07/28(木) 22:42:50.84
LightSwitchが登場したけど、Accessももう終わりかな・・・。
623名無しさん@そうだ選挙にいこう:2011/07/28(木) 23:26:14.18
>>622
それ、納品書とか請求書とか印刷できるの?
624名無しさん@そうだ選挙にいこう:2011/07/29(金) 04:41:31.59
>>622が既に終わってる。
625名無しさん@そうだ選挙にいこう:2011/07/29(金) 09:37:45.31
>>623
そういうのは桐にしとけ
626名無しさん@そうだ選挙にいこう:2011/07/29(金) 14:54:57.76
>>622
スゲー賑わってるぞ

【製品】日本マイクロソフト、簡易アプリ開発ツール「LightSwitch」のBeta2日本語版を公開(11/04/06)
http://hibari.2ch.net/test/read.cgi/pcnews/1302095455/
627名無しさん@そうだ選挙にいこう:2011/07/29(金) 15:46:58.97
あー、確かにコードなしで作れるwww
628名無しさん@そうだ選挙にいこう:2011/07/30(土) 00:53:07.29
教えてください。

Access2003 WinXp です。

テープルA(リレーション設定あり)
テーブルB

がある状況で、

テーブルA(リンク元)→テーブルB へリンクテーブルの設定をしてます。
テーブルAはリレーション設定が確かにされているのですが、
テーブルBのリレーション情報を見ると、どうもテーブルAのリレーションが
解除されてるような気がします。実際のところどうなんでしょうか。
いまいち判断がつきません。
629名無しさん@そうだ選挙にいこう:2011/07/30(土) 09:12:44.09
>>628
お前がそう思うなら、されてないんじゃないの?

お前の言うリレーション設定ってのがリレーションシップの事だとして
リレーションシップにテーブルの表示がない、もしくは
リレーションシップが設定されていない、とかじゃねえの?
630名無しさん@そうだ選挙にいこう:2011/07/30(土) 11:44:40.96
>>627
いや、逆だ、コードなしじゃ何もできん、最初から入力と検索だけがある
コンボボックス作るのにもコード必要
631名無しさん@そうだ選挙にいこう:2011/07/30(土) 18:40:40.98
もうPGは中国人だよね!
                ∧∧
  ♪ ∧__,∧     ♪ /支\
     < `Д´>       ( `ハ´)  シナーとニダーが
     (つ  つ      (つ  つ
     |   |        |   |   力を合わせて ♪
     し― つ       し― つ
        彡         彡

         ♪      ∧∧
   m∧__,∧      m/支\ ♪
   | < `∀´ >      | ( `ハ´ )   日本の
    ヽ    つ     ヽ    つ
    |    |       |    |    幸せを〜 ♪
    し―ーJ       し―ーJ


         ♪
    , -―-、、      , -―∧∧  ♪
   /  ∧__,∧    /   /支\
   l  < `∀´>   l   ( `ハ´) 奪い取るダック ♪
   ヽ、_ フづと)'    ヽ、_ フづと)'
   〜(_⌒ヽ      〜(_⌒ヽ
     )ノ `J          )ノ `J

632628:2011/07/31(日) 00:53:03.27
<<629

>リレーションシップにテーブルの表示がない、もしくは
>リレーションシップが設定されていない、とかじゃねえの?

そこまで素人じゃないわボケ
自分で調べるわ、さいなら。
633名無しさん@そうだ選挙にいこう:2011/07/31(日) 15:46:07.51
accdb閉じるとパスワードの入力求められて何入れても弾かれます。
作り直してしばらく問題なかったですが、また起こるようになりました。
2010です。
データベースパスワード設定して閉じるときに最適化を設定すると生じる感じがします。
同様な経験の方はおられますか?
634名無しさん@そうだ選挙にいこう:2011/08/01(月) 14:20:14.62
Access2010SP1
以下が動作しません、何か対策はありませんか?

How to: Filter a Report Using a Form's Filter
Office 2010 The following example illustrates how to open a report based on the filtered contents of a form. To do this, specify the form's Filter property as the value of the OpenReport method's WhereCondition argument.

Private Sub cmdOpenReport_Click()
If Me.Filter = "" Then
MsgBox "Apply a filter to the form first."
Else
DoCmd.OpenReport "rptCustomers", acViewReport, , Me.Filter
End If
End Sub

http://msdn.microsoft.com/en-us/library/ff192077.aspx
635634:2011/08/01(月) 14:33:57.49
フォームをフィルタして実行すると、パラメータの入力を求めるダイアログが開いてしまいます
636634:2011/08/01(月) 15:28:43.89
勘違いでした、レポートのソースが別クエリになってました
失礼いたしました
637名無しさん@そうだ選挙にいこう:2011/08/02(火) 02:29:50.09
こんなアホどもに使われるAccessが可哀想
638名無しさん@そうだ選挙にいこう:2011/08/02(火) 10:31:12.37
>>633
俺も何度もあったぞ、その時は空のaccdbに全部インポートして直したが
639名無しさん@そうだ選挙にいこう:2011/08/05(金) 00:13:30.86
SP1になって条件付き書式多少早くなったね、使えるようになった。
640名無しさん@そうだ選挙にいこう:2011/08/05(金) 08:59:05.41
Access2003で作った.adpをAccess2010で改作中ですが、.adp読み込み中にエラーで落ちてしまうようになった
ログにはこんなものが
Microsoft Office 14 Faulting application msaccess.exe, version 14.0.6024.1000, stamp 4d83e4fc,
faulting module vbe7.dll, version 7.0.16.19, stamp 4d430aec, debug? 0, fault address 0x00023081.?x000d;?x000a;
これをAccess2003で読ませると正常。保存してAccess2010で読ませると今度は正常に読む。
編集を続けていくとまたエラーになる。1月前からこれを4,5回繰り返しています。
VBに何か変なものでも入ったんですかねえ。VBコンパイルしてもエラーは無いです。
641名無しさん@そうだ選挙にいこう:2011/08/05(金) 23:16:12.25
2010です
レコードセレクタの右クリックショートカットをカスタマイズする方法はありませんか?
642名無しさん@そうだ選挙にいこう:2011/08/07(日) 09:07:13.30
OS:Windows7Home
Access:2010(ランタイム)

Accessの地べた(フォームも何もない状態の一番下地)の色って、プログラムで変更する方法はありますか?
実行はランタイム版で行います。
パッケージ版は設定で、青、黒、銀の3色から選択可能ですが、ランタイム版では項目がありません。
#ランタイム版で同じにできたとしても、この色では大顰蹙ですが。

色の種類はプログラム的に。できればフレームの色とは独立させたいのですが。
643名無しさん@そうだ選挙にいこう:2011/08/07(日) 09:16:47.78
ラインタイムは使っちゃダメってgoogle先生で調べたサイトにいっぱい書いてあった
644名無しさん@そうだ選挙にいこう:2011/08/07(日) 12:19:53.67
>>641
まずはCommandbarオブジェクトを探してみたりすることだな。

>>642
基本的にはねーよ。なにが起きても泣かない根性があるならがんばれ。
青黒銀は "Office" 全体の設定だ。アプリケーションは関係ない。レジストリに記録されとる。
>この色では大顰蹙ですが。
使うのをやめることを検討しては?

>>643
うん、君は使わない方がいいね。
645名無しさん@そうだ選挙にいこう:2011/08/07(日) 12:24:17.07
>>644
>使うのをやめることを検討しては?
別言語で作り直す費用と時間が出ればねぇ・・・・
646名無しさん@そうだ選挙にいこう:2011/08/07(日) 14:08:51.10
>>644は頭が悪いからスルーで
647名無しさん@そうだ選挙にいこう:2011/08/07(日) 14:42:07.86
>>646
お前がスルーできてないのに?www
648名無しさん@そうだ選挙にいこう:2011/08/07(日) 15:12:06.32
649名無しさん@そうだ選挙にいこう:2011/08/07(日) 19:56:10.51
君たち楽しそうだね
650名無しさん@そうだ選挙にいこう:2011/08/07(日) 20:00:46.74
2010です
レコードセレクタの右クリックショートカットをカスタマイズする方法はありませんか?
651名無しさん@そうだ選挙にいこう:2011/08/07(日) 21:25:05.55
Access2010のマクロをxmlに保存するにはどうしたら良いの。
652名無しさん@そうだ選挙にいこう:2011/08/07(日) 21:58:52.96
>>650,651
君たちは君は使わない方がいいね。
653名無しさん@そうだ選挙にいこう:2011/08/07(日) 22:03:52.23
>>652は頭が悪いからスルーで
654名無しさん@そうだ選挙にいこう:2011/08/09(火) 21:36:04.44
クエリでテーブルを結合するとき
123-4567など 3桁の数字 ハイフン 4桁の数字で構成されたフィールド
1234567など 7桁の数字 で構成されたフィールド
で結合させるにはどうすればいいでしょうか。

あらかじめハイフンを消してからフィールド同士を結合するのではなく、
一方はハイフンをつけたまま結合させたいのです。
655名無しさん@そうだ選挙にいこう:2011/08/09(火) 22:55:56.28
はいスルー

次の方どうぞ
656名無しさん@そうだ選挙にいこう:2011/08/09(火) 22:57:23.87
>>651
確かにSP1で出来なくなってる
657名無しさん@そうだ選挙にいこう:2011/08/10(水) 09:18:47.40
>>654
mid([hoge],1,3)&"-"&mid([hoge],4,4)
658名無しさん@そうだ選挙にいこう:2011/08/10(水) 10:39:42.61
>>654
おれ質問の意味が分からないや
659名無しさん@そうだ選挙にいこう:2011/08/10(水) 10:49:39.39
>>654
全部文字列にすりゃええがな、では初歩的すぎるので、なんぞ落とし穴でも?
660名無しさん@そうだ選挙にいこう:2011/08/10(水) 10:50:07.32
select 列1,列2... from テーブルA union select 列1,列2... from テーブルB;
661名無しさん@そうだ選挙にいこう:2011/08/10(水) 11:33:54.83
ハイフンをつけたまま結合させるのは不可能っしょ
662名無しさん@そうだ選挙にいこう:2011/08/10(水) 15:30:59.03
.adpなら
select 何か from t_A innner join t_B on t_A.F1 = substring(t_B.F2,1,3) + '-' + substring(t_B.F2,4,4)
663名無しさん@そうだ選挙にいこう:2011/08/11(木) 13:36:58.93
ご教授お願いします。

★ OS win7 ACCESS 2010

★顧客管理のデータベースを作成しています。
 住所の入力にコンボボックスを使用したいと考えています。
 
 日本全国のテーブルが都道府県別に用意してあります。(例:「東京都」「埼玉県」・・・)
 現在、都道府県のコンボボックスと、市町村名のコンボボックスを作成してあります。 
 
 都道府県のコンボボックスで県名を選ぶと、それに該当した県のテーブルを開いて、
 そこから市町村名のコンボボックスを表示して選べるようにしたいのです。

 都道府県を一つのテーブルにして、クエリにしないとできないのでしょうか?
 できたら上記の方法でする方法をお願いします。
 
 
664名無しさん@そうだ選挙にいこう:2011/08/11(木) 14:13:34.18
>>663
都道府県コンボボックスのAfterUpdateで
Me!市町村コンボボックス.RowSource = "select * from " & Me!都道府県コンボボックス
665名無しさん@そうだ選挙にいこう:2011/08/13(土) 00:01:02.74
2002です。
一時テーブルを使用しているんですが、非常に重いのでメモリに持つようなことはできないでしょうか?
666名無しさん@そうだ選挙にいこう:2011/08/13(土) 10:35:58.67
連結フォームの表示が要らないんなら、配列やDictionary使えば良いんじゃね
667名無しさん@そうだ選挙にいこう:2011/08/15(月) 05:59:45.69
【 システム環境  】 Windows7, Access2002
【 VBAが使えるか 】 少しだけ読めます
【 検索キーワード 】access 統計 確率

あるスポーツの競技成績を種目や年度、月単位などでの細かい各個人の勝率を
割り出すという作業を行いたいと思っていまして
それにaccessが適当ではないかと判断して今学習中なのですが
現状は初心者入門ページでaccessを学び、ざっくりとaccessの概念がわかった状態です


競技結果のデーターベースをクエリで細かな種目別、日別の競技結果などは
簡単に出せるだろうとは思うのですが、それを更に同じように細かな種目や
期間別での勝率を割り出して一緒に表示するなどということは可能なのでしょうか?

エクセルなどと併用すれば、現状できるかなと思うのですが、accessでそういう
確率も計算して取り込んだデーターベースの作成の仕方が、ちょっと掴めません。

多少ググって解説ページなども探してみたのですが、どうも目的の作業が解説されている
ページを見つけることができませんでした。
ですので解説をしているページ、マニュアルや参考書などの
ここで勉強すればいいよという方向性の話でも

いいので、どなたか教えていただけないでしょうか?
668名無しさん@そうだ選挙にいこう:2011/08/15(月) 06:46:03.82
一緒に表示するように作るんじゃダメなのかな。
669名無しさん@そうだ選挙にいこう:2011/08/15(月) 07:22:23.57
>>668
ありがとうございます。
確率がデータービューに表示されるようにクエリをいじくるということですか?
その辺の操作などが解説されてるサイトや、マニュアルはご存知でしょうか?

例えば10人のランナーが100M走を1000回ほどやったときに、各人の1位から10位になる
確率などをまとめて出したいのですけど。

クエリの操作で、試行回数と、順位の個数の分布出したりとかっていうのが、まだちょっと
わからないのですが。簡潔なやり方とかあるんでしょうか?
670名無しさん@そうだ選挙にいこう:2011/08/15(月) 12:06:20.20
>>669
アクセスにもSQLServerにも統計を扱う関数はあるが、実際どう適用するかはやってみないとなんとも
まあ、ここで聞いても >>662>>664 のようなぶっきらぼうな答えしか返ってこないので、
それが得意なサイトへ行ったほうがよい。
accessclub とかmougとか
671名無しさん@そうだ選挙にいこう:2011/08/15(月) 16:24:29.88
>>670
ありがとうございます。初めて見るサイトでした。そこで調べさせていただきます。
672名無しさん@そうだ選挙にいこう:2011/08/15(月) 23:13:54.96
マスタ登録画面を作る時って、マスタ登録テーブル=一時テーブルみたいなのを作った方が良いですか?
登録ボタンで登録処理するようにしないと、Accessって入力した値がそのままDBに入っちゃいますよね。
673名無しさん@そうだ選挙にいこう:2011/08/16(火) 01:03:36.45
NewReocrdプロパティで新規レコードであることが判るわな、
んで、
Dirtyプロパティで編集中であることが判るんだから、
BeforeUpdateであれこれすればいいんじゃね?
登録したくなければ、CancelしてUndoするなりか
674名無しさん@そうだ選挙にいこう:2011/08/16(火) 08:36:50.99
>>672
フォームにテーブル1行分の非連結フィールドを作ってそこに入力させて登録ボタンでごっそりテーブルに持っていく
わかりやすいし、一時テーブルより後腐れがない
675名無しさん@そうだ選挙にいこう:2011/08/17(水) 18:53:28.57
Accessの機能は使わずVBAが良いってことか!
676名無しさん@そうだ選挙にいこう:2011/08/18(木) 19:38:36.00
VS2010の機能を取り込んで、こっちをLightSwitchにしたら良いんじゃないだろうか
677名無しさん@そうだ選挙にいこう:2011/08/18(木) 19:55:01.71
>>672
そういうのを非連結でやる意味が無いんだが

> 登録ボタンで登録処理するようにしないと、Accessって入力した値がそのままDBに入っちゃいますよね。
入りません、他のレコードに移動したときに入ります
入る前に登録ボタンを出させて、Yesなら登録、Noなら破棄
678名無しさん@そうだ選挙にいこう:2011/08/18(木) 20:29:47.46
数社分の決められたフォーマット(CSV or Excel)を、1つのDBに取り込みたいのですが、
どういう操作をすればよいでしょうか?

それぞれクライアントが用意しているフォーマットは、列の書き方がばらばらなので、
DBに取り込む際に1列1列ちゃんとエクスポート先を指定したいです。
679名無しさん@そうだ選挙にいこう:2011/08/18(木) 23:19:09.05
そのままインポートしてから、その後に1つのテーブルに併合するほうが楽かも
680名無しさん@そうだ選挙にいこう:2011/08/19(金) 07:24:09.19
>>679
見出しが一致していないと、併合できないですよね?
681名無しさん@そうだ選挙にいこう:2011/08/19(金) 15:25:46.34
>>680
table_AにX、Y table_BにW、Zがあって、W、ZをX、Yに追加するには (XYWZは項目名)
  INSERT INTO table_A (X,Y) SELECT table_B.W,table_B.Z FROM table_B;
682名無しさん@そうだ選挙にいこう:2011/08/21(日) 02:09:04.33
>>678
わかりやすい方法を提案する
まずは複数社分テンポラリテーブルにインポートする
元データの列がバラバラなので、クエリでインポート先に合わせて並べ替える。
インポートしたテーブル分の数のクエリができている状態
この段階で作られたクエリをユニオンでつなぐ→追加クエリでテーブルに書きだす

これでどうだろう
683名無しさん@そうだ選挙にいこう:2011/08/21(日) 09:51:45.58
Accessで帳票ソフトを開発しようかと思うのですが
開発する人だけでなく、使用する人のPCにも
Accessを購入する必要がありますか?
684名無しさん@そうだ選挙にいこう:2011/08/21(日) 10:14:18.63
>>683
ない
685名無しさん@そうだ選挙にいこう:2011/08/21(日) 11:34:05.21
LightSwitchで作るアプリはフォントサイズ変えられないの?
小っちゃくて見にくいんですけど
686名無しさん@そうだ選挙にいこう:2011/08/21(日) 14:54:47.52
>>683
なくても大丈夫です。
でも、開発者が未熟で運用し始めても細かい修正が出てくるようなら、
Accessを入れておくとそのマシン上ですぐに修正作業できるので便利。
687683:2011/08/21(日) 16:52:54.49
>>684, >>686
ありがとうございます。
Accessさわるのは10年ぶりなのですが
何をどうやってたかすっかり忘れてしまって・・・
さっそく仕事にとりかかります
688名無しさん@そうだ選挙にいこう:2011/08/21(日) 19:24:31.34
Accessは俺も10年ぶりに触ることになった。
mdbが新しくなったら、自動的にクライアントにコピーしてから立ち上がるような
ショートカット?の作り方してた気がするけど、もう全然覚えてないぜ。
689名無しさん@そうだ選挙にいこう:2011/08/21(日) 19:55:28.47
>>681
レスありがとうございます。
これだと、表示結果がtable_Bになってしまうのですが、
結果がtable_Aの状態で出すにはどうすればよいのでしょうか?
690名無しさん@そうだ選挙にいこう:2011/08/21(日) 20:27:12.62
>>682
並び替えせずに、インポート元・エクスポート先を選んでできないでしょうか?
列数が多い+エクスポートには不要な列が多いこともあって、並び替えせずにやりたいのですが・・・
691名無しさん@そうだ選挙にいこう:2011/08/21(日) 21:19:36.39
桐でやればインポート定義ででフィールド対応指定できるよ
692名無しさん@そうだ選挙にいこう:2011/08/22(月) 10:51:16.20
>>691
accessではそういう機能がないということでしょうか?
693名無しさん@そうだ選挙にいこう:2011/08/22(月) 12:30:35.14
>>692
accessでもインポート定義あるよ
694名無しさん@そうだ選挙にいこう:2011/08/22(月) 12:43:42.67
>>693
エクスポート先は項目があるだけでデータが空で、そこにデータを流し込みたいです。
追加機能だと、インポート元の項目が出てしまうのですが、エクスポート先の項目を出した上で
レコードが追加された状態になるには、どの手順を踏めばよいでしょうか?
695名無しさん@そうだ選挙にいこう:2011/08/22(月) 13:01:21.93
>>689
>これだと、表示結果がtable_Bになってしまうのですが、
どうやって表示してる?
696名無しさん@そうだ選挙にいこう:2011/08/22(月) 14:00:58.44
>>694
インポート定義で仮のテーブルを作り、追加クエリで解決じゃないの?
697名無しさん@そうだ選挙にいこう:2011/08/22(月) 14:13:01.51
>>695-696
ごめんなさい・・・自己解決しました。セキュリティか何かかかっていて、
解除しないと追加できなかったみたいです。

ちなみに、複数列の要素を結合してひとつの列にエクスポートはできますか?
698名無しさん@そうだ選挙にいこう:2011/08/22(月) 14:44:43.65
>>697
>複数列の要素を結合してひとつの列にエクスポート
ちょっと質問の内容がピンと来ないけど具体例を教えて下さい
---
テーブルA
.列1|列2
aa | bb
これを
テーブルB
列3
aabb
にしたいってこと?
---
だったら
INSERT INTO table_B ( 列3 )
SELECT [列1] & [列2] AS sample
FROM table_A;
---
だけど。想像で答えたから的はずれだったらゴメンだが
699名無しさん@そうだ選挙にいこう:2011/08/22(月) 15:48:52.06
>>698
まさしくそのことでした!
ちなみに、SQL文でないと処理できませんか?
(Accessを使う方は別の方なので、できればGUIの機能的な所だけで済ませたいのですが・・・)
700名無しさん@そうだ選挙にいこう:2011/08/22(月) 16:01:19.13
>>699
guiだよ
ここに書くときに表現できなかったからsqlで書いた

クエリのsqlビューで>>698を入力してデザインビューで開き直してみろ


701名無しさん@そうだ選挙にいこう:2011/08/22(月) 17:40:36.23
>>700
それはわかるのですが、プルダウンで選んだりして処理はできないでしょうか?
コマンドを入れ込む形式だと、別途教え込む時間かかってしまので・・・
702名無しさん@そうだ選挙にいこう:2011/08/22(月) 17:42:18.40
>>700
ああごめんなさい。解決しました!
703名無しさん@そうだ選挙にいこう:2011/08/22(月) 18:42:22.79
テーブル1は型番・名前、テーブル2は型番・値段のレコードがあります。
型番の一致するものだけ、値段のレコードをテーブル1につけたいのですが、
どういう処理をすればよいでしょうか?


【 システム環境  】 Windows7, Access2010
【 VBAが使えるか 】 いいえ
【 VBAでの回答  】 否
【 検索キーワード 】 Access ピポッド
704名無しさん@そうだ選挙にいこう:2011/08/22(月) 18:42:26.46
>>701
他に見てる奴のためにどうやってか解決したのか書いとけよ

--
1)クエリをデザインビューで作成する
2)table_Aを選択する
3)[列1]&[列2]と書いてフィールドを作成する(式1: となるので式1の部分を任意の名前にする)
4)ビューで内容を確認する
5)4が求めてる結果なら、クエリの種類で追加クエリを選択して、追加先としてtable_Bを選ぶ
6)レコードの追加に、4)の結果を挿入したい列を選択する(例では列3)
705名無しさん@そうだ選挙にいこう:2011/08/22(月) 18:50:28.07
>>703
まずあんたが提示する条件だとテーブル1に値段フィールドがないけど?
706名無しさん@そうだ選挙にいこう:2011/08/22(月) 18:52:23.44
>>705
ではまず、テーブル1に空でもいいので値段フィールドつけないとダメということでしょうか?
707名無しさん@そうだ選挙にいこう:2011/08/22(月) 20:23:17.76
>>703
テーブル1にupdateしたいのか
違うテーブルもしくはクエリにしたいのか
708名無しさん@そうだ選挙にいこう:2011/08/22(月) 23:50:27.53
【 システム環境  】 Windowsxp, Access2003(インターフェイス)、SQL Server2000(実データ)
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可

SQL ServerをAccessにリンクさせてデータのやり取りをしている中で、
2万件程度のデータを、全行削除すると数十分掛かるぐらい時間が掛かるのですが
これはどのように回避すればよろしいのでしょうか?

削除方法は、以下です。
CurrentDb.Execute "DELETE FROM リンクテーブル名", dbSeeChanges

SQLServerのクエリアナライザで直接、"DELETE FROM テーブル名"を実行した場合は、
1,2秒掛からないぐらいです。
709名無しさん@そうだ選挙にいこう:2011/08/23(火) 08:41:52.33
パススルークエリ使え
710名無しさん@そうだ選挙にいこう:2011/08/23(火) 13:51:33.87
Access2003を使用しています
複数のテーブルを扱う時の質問です。

MDBファイルにテーブルを1つだけ作り、他テーブルはリンクテーブルを設定して
INNER JOIN で使っています。

1つのMDBファイルにテーブルを複数作って、INNER JOINで使うのと、
使い勝手は同じなんですが、MDBファイルが別々の方が、
壊れた時の修復が少なくて良いなぁと思っています。

他にメリット、デメリットはありますでしょうか?
あれば教えて頂きたいです。
711名無しさん@そうだ選挙にいこう:2011/08/23(火) 14:07:19.38
>>710
壊れたとき云々いうならバックアップをしっかりとっとけ

●複数のファイルに保存して修復について
そもそもそのシステムはどれかのテーブルがなくても動くシステムなの?
何かのMDBが壊れて修復がうまく行かなかった場合、
結局システム全体が使えなくなるんだよな?

●ひとつのファイルで管理することに関して
質問のようにMDBひとつにまとめた場合、MDBが壊れて修復失敗の場合も上記と同様に
結局システム全体が使えなくなるんだよな?

※いつでも復旧できるようなデータ(郵便番号や○○コードなど)ならともかく、修復→復旧できなくて困るのは誰だ?

つまり重要なのは分散ではなくバックアップだ。(リスクを分散させるという考えを否定する意図ではないです)
信頼性についてはaccessではなく上位のsqlserverやその他のデータベースシステム似したらいいんじゃないのかな
712名無しさん@そうだ選挙にいこう:2011/08/23(火) 14:18:36.30
mdbだと最適化も必要だから、たくさんあると面倒だね。
うちでは1つのmdbにテーブルをまとめて10台の端末からリンクして使っていた。
8年ほど使って1度も壊れなかった。今はSQLServerに変えたが。
713名無しさん@そうだ選挙にいこう:2011/08/23(火) 15:35:59.37
>>711

おっしゃる通り
分散する事によってトラブルの種になる事もありそうですね。
バックアップである程度回避できるなら分散してリスク増やす必要もないですね。

MDBはファイルサイズの制限があるので、
修復が簡単なテーブル(郵便番号など)だけ外部にして
バックアップをこまめにするというのが良さそうですね。


>>712

最適化ですか。
やったことないですが・・・

1ファイル一回の最適化で済んでも、
ファイルの数だけやらないといけないですね。

それでは運用の手間が増えますね。

MDBファイルへのアクセスの仕方丁寧にやれば壊れにくくなるんですね。
714711:2011/08/23(火) 20:31:05.98
>>713
お前は何に困ってて、何を「管理」したいんだ?
障害時のダウンタイムをを減らすために運用面を工夫したいという薄っぺらい文章に読み取れてしまう。
どんな障害が予測されて、それぞれの対策はどうなっているか。それぞれの障害回復の手順・再ービス停止時間。
ダメだった場合の復旧策・それぞれにかかる時間や能力を一覧にまとめて、コストとして算出してみろ。

例えばユーザーがデータをぶっ壊したを例にとって考えると、
・ユーザーの教育をする
・ユーザーのアクセス制限をする
・ロールバックできる仕組みを作る
・管理者が諸々の調整や復旧を頑張る
・そういうこともあるさ!という文化にする
と、簡単に考えてもたくさんあるな。
で、それにかかる能力値(だれがやるの?だれだったらできる?)をあわせてコストを算出して、その対策をやる価値があるか判断してみろ。
他にもハードウェア障害時(HDD逝った・サーバー電源イカれた・ネットワーク反応しない・VPN(使ってるの?しらんけど)・外部からのどうのこうの・データの改竄・不明の死)
ソフトウェア障害(今回あんたが質問してるのはここのほんの一部だ)・ユーザーがアンポンタン対策・天災対策etc
そもそもそんな事まで考える必要があるの?もそうだ。コストに見合わせて判断すればいい
最後俺が頑張ればいいんだよ。これもその判断の一つ。

冒頭のお前は何に困ってて、何を「管理」したいんだ?ってのは、
データが壊れた時のことだけ考えて分散がいいっすか?集中管理がいいっすか?っていう質問でなんか解決されるんですか。そもそも障害ってそれだけですか?ってことが言いたかった。
長くなってごめん。本当に叩く意図はないんだ
参考に(だいぶ大げさかもしれないが)BCPでぐぐってみろ。各企業の障害時対策の取り組みのヒントがある。
715名無しさん@そうだ選挙にいこう:2011/08/23(火) 20:40:49.52
SQLサーバーとaccessはどっちが強いの
やっぱmysqlとかOracleが最強だよな!っていう奴に対して
お前はどれでも一緒だよksって一蹴されるのは>>714が真理なんだと思う
716714:2011/08/23(火) 21:02:13.81
書き忘れた。
大げさに考えすぎて細かい運用ルールで固めすぎないことも大事。
717名無しさん@そうだ選挙にいこう:2011/08/24(水) 08:43:55.15
Access使ってる=零細使用なんだから、大それた管理なんて考えもしないでしょ
運用して、痛い目にあって、学習するプロセスも被害がそんなにでかくないから
718名無しさん@そうだ選挙にいこう:2011/08/24(水) 09:23:23.61
>>714
おま、それは正論だけどな、厳しすぎwww
実際そこまでの考えを持って仕事できるか?
会社のコンセンサスが必要だし経営者の認識も甘いし、結構ずれている
まあ、あえて合わせてないんだろが・・・
リスクマネジメントが出来てる会社なんて大手でもなかなか無いがな
一人リスクマネジメントごっこならできるかもしれんがな
俺の周りでも、その意識を持って仕事をしている人間なんて限られてくるし
実際思うようには行かないもんだ。だから思考停止している奴もちらほらいる

>>717の言うとおり内容からもシビアな要求でないし
もしそれがミッションクリティカルなシステムなら
任せている会社も、それをこなす人員も、たかが知れてるって話だろ
719名無しさん@そうだ選挙にいこう:2011/08/24(水) 18:44:50.67
Aテーブルのデータを、Bテーブルにある内容を元にレコードの削除を行いたいです。
参照対象は、商品IDが共通するものを削除したいです。
どのようなクエリ操作を行えばよいでしょうか?

環境:2010
720名無しさん@そうだ選挙にいこう:2011/08/24(水) 19:39:59.84
>>719
>Aテーブルのデータを、Bテーブルにある内容を元にレコードの削除を行いたいです。
Aテーブルのレコードを消したいのか、Bテーブルのレコードを消したいのか、両方のテーブルのレコードを消したいのかが読み取れない。

>どのようなクエリ操作を行えばよいでしょうか?
削除クエリ。だが、上記の通りどっちのテーブルを消すのかが不明なので、間違って意図しない方を削除しないように、サンプルsqlは提示しません
721名無しさん@そうだ選挙にいこう:2011/08/24(水) 19:50:47.47
>>714
言葉はきついが間違ったことは言ってないな
天災対策はさすがに小規模な会社では不要でしょ。会社ごと潰れるからw
BCPなんて言葉始めて聞きました!
722名無しさん@そうだ選挙にいこう:2011/08/24(水) 20:14:46.82
>>720
すいません。
Bテーブルは削除対象リストです。
なので、削除の対象になるのはAテーブルのレコードです。
723名無しさん@そうだ選挙にいこう:2011/08/25(木) 01:47:00.93
724名無しさん@そうだ選挙にいこう:2011/08/25(木) 02:07:39.97
めんどくさいからSQLで書く
動かないかもしれないが、そのときは適当にいじってくれ
SQLなら2種類
INを使うか、EXISTSを使うかだ

DELETE FROM Aテーブル WHERE 商品ID IN (SELECT 商品ID FROM Bテーブル);

DELETE FROM Aテーブル WHERE EXISTS (SELECT 'X' FROM Bテーブル WHERE Bテーブル.商品ID= Aテーブル.商品ID);

デザインビューで見たあとSQL変わるだろうが気にするな
どちらのSQLがいいかは、宿題にしようか
725名無しさん@そうだ選挙にいこう:2011/08/25(木) 07:46:19.15
テーブルAに対し、Bテーブルの内容をインポートしたいです。

テーブルA:名前、住所、・・・(かなりの項目数が続く)
テーブルB:名前、住所

テーブルBは名前、住所が完全に入ったもので、テーブルAは住所が抜けてたり不正確です。
名前は両方とも正しいので、名前が一致する場合テーブルAにテーブルBの住所を入れ込む感じです。
726名無しさん@そうだ選挙にいこう:2011/08/25(木) 09:22:46.48
>>725
updateをやって次にinnsertするのがわかりやすい
updateは簡単だよな。insertは >>724 を応用してやってくれ
727名無しさん@そうだ選挙にいこう:2011/08/25(木) 10:45:34.36
ACCESS2003 帳票フォームで、縦スクロールの位置を
レコード単位ではなく、スクロール量単位で指定できないでしょうか?

やりたい事は、帳票フォームのレコードソースを切替して使用
レコードソース切替前に 現在の縦位置のスクロール量を取得
切替後に、取得したスクロール位置まで復帰という感じです

Bookmarkを利用すればレコード単位の位置復帰はできるのですが、
これだと復帰時にレコードがフォームの一番上にきてしまい、切替前と
画面表示が変わってしまいます。

スクロール量の単位で移動が出来れば完全に切替前の状態で復帰できると思うのですが
728名無しさん@そうだ選挙にいこう:2011/08/25(木) 11:54:47.91
2010で、複数のフォームにある複数のコントロールの日付選択カレンダー機能を、
一括で無効にすることは可能でしょうか?
カレンダーコントロール廃止に伴い自作カレンダーフォームを使用するので、この機能が必要ないのです。

やっぱりVBAでプロパティを変えるループ処理を書くしかないですかね?
729名無しさん@そうだ選挙にいこう:2011/08/25(木) 12:02:28.69
>>728
コントロールを複数選択してプロパティ変更すれば一発ですけど
>>727
フォームのレコードソースを切り替えるんじゃなくてフォーム自体をコピーして
新しいフォームのレコードソースにに切り替え対象を当てるというのはどうですか
730名無しさん@そうだ選挙にいこう:2011/08/25(木) 12:39:51.58
>>728
ちょっと読み違えました。フォームに複数コントロールがあって、じゃなくて、
複数フォームにあるコントロールを一括して変更ということですか
複数フォームに渉ってコントロールを選択することはできるけれど、
変更されるのは一番上のフォームだけですね。
VBAでやるしかないかな
731名無しさん@そうだ選挙にいこう:2011/08/25(木) 15:22:21.69
テキストボックス既定のプロパティを変えておけば、今後は悩まなくて済む。
732名無しさん@そうだ選挙にいこう:2011/08/25(木) 15:30:03.62
>>729
それだと切り替える前のデータの位置が分からくなってしまわないでしょうか?

スクロール位置は動くことなく、Repaintしたときのように
データの表示内容だけが切り替わって欲しいのですが・・・

733名無しさん@そうだ選挙にいこう:2011/08/25(木) 15:38:54.65
>>727
> 現在の縦位置のスクロール量を取得

これが無理
734名無しさん@そうだ選挙にいこう:2011/08/25(木) 16:01:53.08
>>732
切り替えるのじゃなくて、元のフォームは開いたままにしておいて、新しくフォームを開く
735名無しさん@そうだ選挙にいこう:2011/08/25(木) 23:07:11.39
>>729-730
ありがとうございます。
VBAで挑戦してみます。

>>731
既定のプロパティはどうすれば設定出来るのでしょうか?
詳しく教えていただけますか。

736名無しさん@そうだ選挙にいこう:2011/08/26(金) 13:21:14.62
>>735
ここに書いてあるんだが、2010は違うようだ
http://office.microsoft.com/ja-jp/access-help/HP005187707.aspx

2010ではデザイン−コントロールで全部開くとコントロールの既定値として設定の項目がある
しかし、変更した全部が既定値になるわけじゃなくて、カレンダーは既定値を変更できない
他の方法は…知りません
737731:2011/08/26(金) 15:59:53.24
>>735
コントロール既定のプロパティ設定には2つの方法があって
配置済みコントロールをひな形とする場合は、配置済みコントロールを選択した状態で[コントロールの既定値として設定]
もしくは、
コントロールギャラリーでコントロールを選択した状態でプロパティウィンドウで設定
736の張ってるリンクの通りだな。

日付選択カレンダーの表示プロパティを[なし]にしておくってことだ
738名無しさん@そうだ選挙にいこう:2011/08/27(土) 09:52:39.34
> 2011/08/25
> 要はSP1でコンパイル済みとするとRTMでは動きませんよということ。
> RTMでコンパイル済みととした場合、64bitSP1では動きません。ということか?

RTMでコンパイル済みとするのは どうやんの?
739名無しさん@そうだ選挙にいこう:2011/08/27(土) 14:12:22.07
Access2010
For Each で一群のコントロールを非表示にして、後でまた表示にすると対象コントロールの背景色が消えてしまう
740名無しさん@そうだ選挙にいこう:2011/08/27(土) 17:56:01.85
Office Home and Business 2010とAccess 2007を同居させてる人いる?
Office 2010 sp1を当てた後(たぶん)からAccessでaccdbが開けなくなってしまった。
OSはWin7 64bit、officeは32bit。
とりあえずAccess2010手配したけど何か回避方法あったら教えてください。
741名無しさん@そうだ選挙にいこう:2011/08/28(日) 10:20:05.45
>>738
たぶん、RTMの意味間違えてる、最初期版の意味
742名無しさん@そうだ選挙にいこう:2011/08/29(月) 22:58:21.39
access2010は何台までPCにインストールできますか?
743名無しさん@そうだ選挙にいこう:2011/08/29(月) 23:36:54.55
>>742
ライセンス次第
744名無しさん@そうだ選挙にいこう:2011/08/29(月) 23:41:05.73
rtmって最終製品版じゃないのか?
745名無しさん@そうだ選挙にいこう:2011/08/30(火) 08:39:18.39
じゃ、まだ出てないのか…2年後?

この項目の説明は、Office 14 の最終リリースに表示されます。
746 忍法帖【Lv=10,xxxPT】 :2011/08/30(火) 16:10:50.14
てすてす
747名無しさん@そうだ選挙にいこう:2011/08/31(水) 09:41:11.95
レポートについてですが、特定のフィールドで任意の値を入れる、またはマクロで差し込んで処理を
させてレポート出力したいのですが、何の機能で実現できるのかアドバイス頂けませんでしょうか

おおまかな動きとしては、
支店名と売り上げが書いてあるテーブルで、
レポート開く→支店名を入力→指定した支店の売り上げレポートが出力される
ここまではできております。あとは、その支店名をマクロで差し込んでレポート出力→支店毎にpdf化を実現したのですが
748名無しさん@そうだ選挙にいこう:2011/08/31(水) 20:19:44.20
クエリに

支店名: [支店名を入力]

といったフィールドを作成しておいて、これをテキストボックスの
コントロールソースとする。
749名無しさん@そうだ選挙にいこう:2011/08/31(水) 23:29:26.61
バックアップデータの分割方法についてご教示ください。

【 システム環境  】 WindowsXP, Access2003
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可

作業履歴テーブルに存在するレコードを作業履歴保存ボタンを押すことにより、
日付をもとに年度ごとに「作業履歴(2010年度)テーブル」、「作業履歴(2011年度)テーブル」に
振り分け、その後作業履歴テーブルの中身は削除、といった動きを行いたいです。
(各テーブルは同じDB内に存在します。)
また、今年度以降の「作業履歴(xxxx年度)テーブル」は存在していません。
そのため、作業履歴テーブルの日付が新年度になった場合は新規に「作業履歴(xxxx年度)テーブル」を作成し、
そこに新しくレコードのバックアップをとっていきたいです。
ボタンクリック時のイベントプロシージャ内にどのような記述をすれば良いでしょうか。

750749:2011/08/31(水) 23:30:23.86
>>749
イメージ図です。

●ボタン押下前
・作業履歴テーブル(T_sagyou)
日付 作業内容
2010/12/25 aaa
2011/5/5 bbb
2011/8/31 ccc
2012/4/1 ddd

●ボタン押下後
・作業履歴テーブル(T_sagyou)
日付 作業内容

・作業履歴(2010年度)テーブル(T_sagyou_2010)
日付 作業内容
2010/12/25 aaa

・作業履歴(2011年度)テーブル(T_sagyou_2011)
日付 作業内容
2011/5/5 bbb
2011/8/31 ccc

・作業履歴(2012年度)テーブル(T_sagyou_2012)←新規作成
日付 作業内容
2012/4/1 ddd
751名無しさん@そうだ選挙にいこう:2011/09/01(木) 00:35:55.02
年度の区切りが単純に年のようなので。(3月/4月区切りじゃないよね?)
作業履歴テーブルから年度を抽出して、
---
SELECT Format([日付],"yyyy") AS 式1
FROM T_sagyou
GROUP BY Format([日付],"yyyy");
---
このクエリ結果をもとに、年度ごとに追加クエリ→削除クエリでfor文で回せばよい。
ただし、追加クエリは移動先のテーブルがないとT_sagyouに残る(T_sagyou_2012)ので、
残ったものはテーブル作成クエリでやればいいんじゃない?

追加クエリの例
INSERT INTO T_sagyou_hoge ( 日付, 作業内容 )
SELECT T_sagyou.日付, T_sagyou.作業内容
FROM T_sagyou
WHERE (((Format([日付],"yyyy"))=hoge));

削除クエリの例
DELETE T_sagyou.日付, T_sagyou.作業内容, Format([日付],"yyyy") AS hoge
FROM T_sagyou
WHERE (((Format([日付],"yyyy"))=hoge));

テーブル作成クエリの例
SELECT T_sagyou.日付, T_sagyou.作業内容 INTO T_sagyou_hoge
FROM T_sagyou
WHERE (((Format([日付],"yyyy"))=hoge));
→このあと削除クエリ
---
先にテーブルがあるかどうか調べて作ってから、追加クエリ→削除クエリでも回したほうがキレイかもね。
752749:2011/09/01(木) 11:29:48.83
>>751
早速のご回答ありがとうございます。とても助かります。
今外出先なのですが、戻り次第動きを試します。

>年度の区切りが単純に年のようなので。(3月/4月区切りじゃないよね?)
↑こちら、説明が分かりづらく申し訳ございません。
年度は3月/4月区切りです。
応用したら出来る、、と信じてコードをいじってみます!
753名無しさん@そうだ選挙にいこう:2011/09/01(木) 16:55:19.31
>>752
751のは年だけ見て抽出してる
3月・4月区切りだと全然違ってくるぞ
>>749の例がどっちともつかない、つまり悪例すぎるからだな
754名無しさん@そうだ選挙にいこう:2011/09/01(木) 16:59:36.94
753だが途中で送信してしまいました
T_sagyouが何が入っているかわからない以上、
t_sagyouの年を最小値を得て、そこから1年ずつforでカウントアップして
「>年/3」で都度抽出しないといけないですね
755名無しさん@そうだ選挙にいこう:2011/09/01(木) 22:05:47.16
勤務時間って何型でどんなふうにDB格納するのが良いんだろ。
24時間をオーバーした時の処理とか、難しいな。
756名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:09:12.70
>>755
桐にすれば時間型ってのがあるぞ
757名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:09:59.49
>>755
うちでは
日付/時刻 の 標準2011/09/01 23:00:00
のような形式にしてます

実際の運用ではICカードでドアのログを読み取ってるので、ユーザーがデータベースに入力することはないのですが、
外出時など例外的に修正することもあるので、修正フォームを作っています。

フォームからユーザーに入力させるのは以下の項目。
・日付(カレンダーから選ばせるので入力はない)
・出勤時間(入力すると日付が補完されてテーブルへ)
・退勤時間(入力すると日付が補完されてテーブルへ)
・休憩時間(勤務時間に応じて自動入力だが、ユーザーが修正することも)
758名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:15:58.27
夜勤とか積算時間に対応できないやん
759名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:34:00.32
>>755
Accessには時間型ってないからな、桐にすれば解決ってのは置いといて
時間間隔をデータとして持ちたいなら、分単位の計算必要なら分で、秒単位の計算必要なら秒で格納すれば良いんでない?
760名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:36:45.50
俺はそうしてる。
DBに計算させた方が良いのか、PGでやるのが良いのかは悩みどころ。
761名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:40:32.42
なんで積算時間に対応できないの?
クエリ組めばいいのに

テーブルに持たせる意味ない
762名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:41:32.47
桐ってAccessが1万ちょっとで買える時代なのに高杉
763名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:42:40.63
>>761
クエリ組む?めんどくさい。
>>759のやり方でいいじゃないか。
764名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:44:41.83
計算すればわかるものを実態としてデータ持たせるとか昭和かよ
765名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:49:37.06
開始日時と終了日時をテーブルに持てば計算して出せるから、時間間隔をテーブルに持つのは宗教上の理由で出来ない
ってのはバカバカしい考え
Accessがどんな宗教に属してる訳でもなく、個々の実務上で有用で便利な使い方をすれば良い
766名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:52:00.36
>>764
おまえ爺さんだろ。
古式ゆかしい。つーか古杉。
767名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:54:10.64
みんな自分が最強だと思っている件
768名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:56:22.50
Accessスレで桐がどうこうと話を出すから宗教論争になるんだよ

Accessスレなのにデータベースを語るなかれ
あwwwくwwwせwwwすwww
769名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:56:34.93
よーし、パパは累計もテーブルに書きこんじゃってるんだぞー
表形式フォームでグリグリスクロールしながら使う場合は、その方がスムースで良いんだぞー
770名無しさん@そうだ選挙にいこう:2011/09/01(木) 23:58:28.28
2010ではテーブルに計算値フォールドまであるしな。
771名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:00:29.65
みんな正規化ってしてますか?
772名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:02:26.70
DBの話と型の話は切っても切れないと思うが

累計データを持たせないてのは、MDBでしか開発したことないから?
773名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:02:54.27
このスレは正規化卒業して、実務に合わせて故意に正規化崩してるレベルが多いんじぇね
774名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:09:09.51
とてもそうは見えないが
775名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:11:59.68
建物の高さデータが必要なデータベースなら、建物の高さを格納すれば良いんじゃね
1F地面の海抜 と 屋上頂上の海抜 に分けて格納する必要ないだろ
776名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:15:15.65
出勤時間と退勤時間の他に累計をテーブルに持たせるって
データベースの使い方を知らない人が、実務レベルではとか逝っちゃってるんでしょ
777名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:16:37.30
出退勤を管理するだけのシステムしか作ったことが無いから
それ以上のことはわからないんだろう。
778名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:18:41.95
>>777
どうせ明確に説明できないんだろ?
779名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:20:33.69
俺流データベース教の教義はいいから
皆そういう宗教論争知ったうえでAccessを有用に使ってるし
780名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:21:05.02
>>778
他のシステムで使うからに決まってるだろ能無し。
781名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:22:16.03
今時勤怠管理システムをAccessで作ってるとか、どこの零細だよって感じだわ
782名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:22:55.70
俺流教義は定説です。説明はできませんが不要です。定説です。それに反するものには説明を求めます。
783名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:22:57.50
>>780
他ってなんだよ。お前は開発したことねーんだろ?
妄想乙
784名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:28:35.75
パパは表形式でスムースにスクロールしながら使うために累計書き込んでるんだぞー
教義に反するからダメと言われても困るぞー

なんでダメなん?
>>778
説明してほしいぞー
785名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:45:32.33
バカ発見器
786名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:48:45.86
君たち、MySQLはUPDATE文にORDERBYを使えるからテーブルに累計を書き込むのが簡単に出来るんだよ。
Access卒業してMySQLにおいでよ。
787名無しさん@そうだ選挙にいこう:2011/09/02(金) 00:51:05.46
俺流教義は定説です。説明は出来ませんが定説です。
788名無しさん@そうだ選挙にいこう:2011/09/02(金) 09:29:41.19
いつから宗教板になってるんだw
789名無しさん@そうだ選挙にいこう:2011/09/02(金) 15:15:06.14
あなたはERMasterを信じますか?
790名無しさん@そうだ選挙にいこう:2011/09/03(土) 06:48:51.78
宗教であれば個人の選択の自由ということになるが、
「データテーブルなんか持たせない!毎回計算するのだ!」
とする根拠が全く説明できないバカ。
791名無しさん@そうだ選挙にいこう:2011/09/03(土) 08:32:51.72
教義は定説です。説明は出来ませんが定説です。教義に反するものには説明を求めます。
792名無しさん@そうだ選挙にいこう:2011/09/03(土) 08:39:21.37
すみません、ちょっと教えてください。

【 システム環境  】 WindowsXp, Access2003
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可

フォームに配置したコントロールそのものをオブジェクト変数に代入し、
コントロールを直接操作したいのですが、どうもうまくいきません。
たとえば、テキストボックスの場合は

Dim myTxtBox as TextBox

Set myTxtBox = Me!txtHoge

--標準モジュールのプロシージャにmyTxtBoxを渡す--

という方法で出来たのですが、チェックボックスの場合にうまく渡せません。
(as TextBox を as CheckBoxに変えてみましたが、なぜか値が渡される。)
どのようにすれば良いでしょうか?

また、出来れば標準モジュール内で最初からコントロールそのものをオブジェクト変数に
代入して操作したいのですが、標準モジュールに以下のように指定したところ、

Set myTxtBox=forms("Uga")!txtHoge

値が代入されてしまい、オブジェクトが代入されませんでした。
どのようにすればよいでしょうか?
793名無しさん@そうだ選挙にいこう:2011/09/03(土) 08:53:35.57
>>792
> Set myTxtBox=forms("Uga")!txtHoge

この後に下記の一行入れて
Debug.Print myTxtBox.Name
で何が返ってくる?
794名無しさん@そうだ選挙にいこう:2011/09/03(土) 17:49:59.97
テーブルに計算値持つのは今風でしょうよ。
正規化とか、そんな時代もありましたねって感じですね。
Web対応したときに困らないテーブル構成に、最初からしといた方が良いですね。
795名無しさん@そうだ選挙にいこう:2011/09/03(土) 18:06:58.40
おじさん古い人間だから第5正規化までしないと気が済まないんだぞ〜
796名無しさん@そうだ選挙にいこう:2011/09/03(土) 20:11:07.20
2000のmdb形式を2007のaccdb形式にしてランタイムで使うと「メモリ不足です。」とかいってデータが保存されね場合がある。
ググってもよくわかんないし、めんどくさいからmdbに戻すことにした。
797名無しさん@そうだ選挙にいこう:2011/09/03(土) 20:55:39.82
しょぼいWebアプリばかり作ってて、業務アプリの経験がないんだろう
PHP+MySQLに多いが、Accessにも多いんだなそういうの
798792:2011/09/03(土) 21:30:09.99
>793

すみません、自宅のパソコンで試したら問題なく動きました。

799名無しさん@そうだ選挙にいこう:2011/09/04(日) 01:53:49.43
>>797はどこへのレスだろうか
800名無しさん@そうだ選挙にいこう:2011/09/04(日) 06:17:38.65
データ量に関係なくテーブルで計算させんの?
一定期間で締めてサマリを別テーブルにもっていくこともしないのか。
俺様理論譲らない人って柔軟に考えられないけど、

毎回似たようなものしか作ってないのかね。
801名無しさん@そうだ選挙にいこう:2011/09/04(日) 08:06:46.08
[Access2003]VBAからテーブル上の十進型のフィールドの「小数点以下保持桁数」を取得する方法はありますか?

やりたいことは、テーブルをExportする場合に、
「十進型なら、小数点以下保持桁数分、かならず出力したい」
ということです。

たとえば、小数点以下保持桁数3の場合、
×12.3
○12.300
このようにExportしたいのです。

802名無しさん@そうだ選挙にいこう:2011/09/04(日) 08:08:51.31
★上からつづき★

そのため、単純にExport機能を使用するのはあきらめ、ファイルに出力するロジックを独自に実装しようとしています。
※もし上記書式で簡単に出力する方法があれば、それでもよいのですが。。。

事前にフィールドの情報を得ていればよいのですが、汎用的に処理するため、
CurrentDb.TableDefs(i).Fields(j).Properties(k)
あたりを調べて桁数を取得し、その情報をもとに書式を設定しようとしているのですが、肝心の「小数点以下保持桁数」を取得する方法がよくわかりません。

詳しいひとご教授いただけますでしょうか?
よろしくお願いします。
803名無しさん@そうだ選挙にいこう:2011/09/04(日) 12:00:00.14
>>801
別途、intする。
すると、小数点以下が削られた状態で出力されるので、その桁数を求める

元々の桁数から、整数だけの桁数引いたら小数点以下部分の桁数が求められるんじゃないかな
804名無しさん@そうだ選挙にいこう:2011/09/04(日) 15:51:14.20
>>803
実レコードからでなく、テーブル定義を参照したいのです。
実レコードを使ってしまうと、たとえば精度=5桁、小数点以下保持桁数=3桁のフィールドがあったとして、

12.345
→ int(12.345) = 12
→ 2桁
→ 精度5桁 − 2桁 = 小数点以下保持桁数3桁

2.345
→ int(2.345) = 2
→ 1桁
→ 精度5桁 − 1桁 = 小数点以下保持桁数4桁

のように、誤った小数点以下保持桁数を算出してしまうと思います。
805名無しさん@そうだ選挙にいこう:2011/09/04(日) 16:19:39.94
>>804
知恵袋の奴か。

回答しようかと色々試したんだが、分からなかった。
「小数点以下表示桁数」なら取得できたんで、ここに
同じ値を入れておくという運用なら、可能かもしれん。
806名無しさん@そうだ選挙にいこう:2011/09/04(日) 17:13:48.83
Xp ACCESS2003です。

フォームの「更新前処理」にVBAで処理をしています。
フィールドA<>0 AND isnull(フィールドB) の条件の時に
「フィールドBが見入力です」の表示を出して、これにOKすると
フィールドBにカーソル移動します。

ここまでは出来ているのですが、この後レコードは自動で更新してしまいます。
この条件でフィールドBにカーソル移動した後に自動で更新しないように方法はありますか?
「更新前処理」のイベントのVBAである以上はそこを制御することはできないのでしょうか?
よろしくお願い致します。
807名無しさん@そうだ選挙にいこう:2011/09/04(日) 17:20:10.50
>>806
> フィールドA<>0 AND isnull(フィールドB) の条件の時に
下記の一行加えてみて

  Cancel = True
808名無しさん@そうだ選挙にいこう:2011/09/04(日) 19:36:48.51
>>807
うまくいきまいした。ありがとうございます。
(凄い速さで回答を頂いていたのに、返事が遅れてすみません。)
809名無しさん@そうだ選挙にいこう:2011/09/04(日) 22:45:11.12
オタクがキモがられるの文化的技術的貢献度の低さと思考の中心がその分野になってることじゃないか
どの分野でも「専門家」と呼ばれる人の知識や熱意だけみればオタクと呼ばれるレベルだがオタクとは呼ばれない
それは人類の文化的もしくは技術的面で大きく貢献しているから

NASAの人が星オタと呼ばれないのは人類の文化的発展に大きく貢献しているから
アニオタは他人(アニメ作者)の妄想に関する知識を深化させてるだけでキモい
茶道の家元が茶オタと呼ばれないのは日本の文化的(ry
パソオタがキモがられるのも他人が作った規格に関する(ry

わかったらさっさとパソコンを組み立てる作業に戻れ
810名無しさん@そうだ選挙にいこう:2011/09/05(月) 07:46:13.76
>>805
知恵袋とマルチポストでした。スマソです。

最終手段としては、「小数点以下表示桁数」に同じ値を入れておいて取得する、とか、最終の最終手段としては、備考欄に書式定義文字列をいれておく(爆)とか、いろいろ手はあるんですが。
けど、そういう処理を自動化したい、という動機からははずれるので。。。

で、そっち(知恵袋)では、ADOXを使った解法を教えてもらいました。
なんとか解決です☆
ありがとうでした。

ttp://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1370503543
811名無しさん@そうだ選挙にいこう:2011/09/05(月) 15:40:06.44
(爆)って何年かぶりにみたな
812名無しさん@そうだ選挙にいこう:2011/09/05(月) 18:54:34.93
>>811
今、リバイバルで流行ってるんだよw
813名無しさん@そうだ選挙にいこう:2011/09/05(月) 21:31:51.28
いつもお世話になります。
Xp ACCESS2003です。

フォーム上で入力はしたけど、また更新(保存)していないデータがあることを
検知する方法はありますか?

今、表示しているデータを利用して別のデータを生成して、他のテーブルに書きこむマクロ
を動かしているのですが、そのマクロの先頭で、入力したが未保存であるデータを検知したら
警告を出したいのです。
814名無しさん@そうだ選挙にいこう:2011/09/05(月) 22:00:23.38
>>813
Form.Dirtyプロパティ
815名無しさん@そうだ選挙にいこう:2011/09/05(月) 22:25:18.66
>>814
できました。
ありがとうございます。
816名無しさん@そうだ選挙にいこう:2011/09/06(火) 16:16:10.56
いつもお世話になります。
Xp ACCESS2003です。

売上の明細データから
[年][月][売上区分][売上金額(合計)]
まで集計した集計クエリがあります。

年度指定で表示する売上の集計表を
作りたいのですが、
例えば2011年と指定すると

2011年度
        1月,2月,3月,4月,5月,6月,7月,8月,9月,10月,11月,12月
売上区分A 
本年売上
昨年売上

売上区分B
本年売上
昨年売上


というフォーマットの売上集計表を作りたいのです。
最初の集計クエリからのデータの選択と
配置だけの様な気がしますが、うまくいきません。

最終表用のテーブルを作って何か関数で(〇〇年は入力値で)
「〇〇年の1月の売上区分Aの売上金額を表示するフィールド」
というようなものは作れるのでしょうか?
それよりもっといい方法はあるでしょうか?
よろしくお願い致します。
817名無しさん@そうだ選挙にいこう:2011/09/06(火) 17:31:38.91
レポート
818名無しさん@そうだ選挙にいこう:2011/09/06(火) 18:51:17.98
>>816ですが、

最初の集計クエリをさらに下の様なクロス集計にして

     月1,2,3,4,5,6,7,8,9,10,11,12
区分
年(降順)

年の条件を2011年または2010にしたら
似たようなクエリができたので
これをレポートにすれば出来そうな雰囲気です。
年指定のところは何とかしないといけませんが。

それともクロス集計をかませないで
1発でレポートで行う方法があるのでしょうか?
こちらも考えてみます。





819名無しさん@そうだ選挙にいこう:2011/09/06(火) 18:56:04.39
>>818
方法はあるが、君が今の段階でなんとかなるって言うならだれも協力しないだろうな
自己満にすぎないから
820名無しさん@そうだ選挙にいこう:2011/09/06(火) 20:30:21.15
>>819
すみません。顔を洗って出直してきます。
821名無しさん@そうだ選挙にいこう:2011/09/06(火) 21:38:00.01
【 システム環境  】 WindowsXP, Access2003
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 access 引数が無効です

テーブルから条件に合った明細を抽出して新しいテーブルを作成しようとしています。
「引数が無効です」と出てしまうので検索しましたところ、
mdbファイルのサイズがどんどん肥大化して容量オーバーになるのが原因だと読みました。

この「容量オーバー」というのはパソコンの性能とは無関係に上限値が決まっているのでしょうか。
それとも自分の今使っているパソコンが貧困なだけで、もっと良いパソコンで同じ作業を行うと
エラーが出ずにテーブル作成できたりしますでしょうか…
822名無しさん@そうだ選挙にいこう:2011/09/06(火) 23:18:30.85
823名無しさん@そうだ選挙にいこう:2011/09/06(火) 23:32:36.38
>>821

> この「容量オーバー」というのは
どの容量オーバーですか?
テーブルが作成できなくて困ってるのではないのですか?

> テーブルから条件に合った明細を抽出して新しいテーブルを作成しようとしています。
> 「引数が無効です」と出てしまう
どのように作成しようとしているのですか?

質問の意味を質問しなくて済むように書いてね
824名無しさん@そうだ選挙にいこう:2011/09/07(水) 09:43:43.53
>「引数が無効です」と出てしまうので検索しましたところ、
>mdbファイルのサイズがどんどん肥大化して容量オーバーになるのが原因だと読みました。

[ACC2003] サイズの大きな Access データベース ファイルで、追加クエリの実行、テーブル作成クエリの実行、またはデータのインポートを行うと、エラー メッセージ "引数が無効です" が表示される
http://support.microsoft.com/default.aspx?scid=kb;ja;835416

インポート、コピー、または Access 2000 のテーブルにデータを追加するときの「無効な引数」エラー メッセージ
http://support.microsoft.com/default.aspx?scid=kb;ja;302495

ここにあるようにアクセスのファイル容量の上限は2Gです。
最適化するとインポート時のワークデータとかあれば消すから容量空く。
ってか、ほんとに調べたのかよ・・・ここ読め。
825名無しさん@そうだ選挙にいこう:2011/09/07(水) 16:02:28.55
【 システム環境  】 WindowsXP, Access2003
【 VBAが使えるか 】 はい
【 VBAでの回答  】 可
【 検索キーワード 】 フォーム 繰り返し

テーブルのでーたが
1-1 A あいうえお
1-1 B かきくけこ
1-1 C さしすせそ
1-1 D たちつてと
1-2 E なにぬねの
1-2 F はひふへほ

となっているデータをフォームで表示する際に
同じ項目を1つにまとめて項目名のように表示したいのですが
可能でしょうか?
(excelだと、一番左の列を同項目ごとに
セル結合する感じです)

見出しをテキストボックスにして、
その内容をサブフォームに渡したら
出来そうかと思ったのですが上手く表現できません。

どなたかよろしくお願いします。
826名無しさん@そうだ選挙にいこう:2011/09/08(木) 19:42:30.37
先生、日本語が通じません
実現したい結果を書いてください
827名無しさん@そうだ選挙にいこう:2011/09/09(金) 23:21:00.53
ここやアホー知恵遅れ、AccessClubとか良く見てるけど、
現状や望む結果を正確に伝えられない奴に、Accessが
使えるわけねぇだろといつも思う。
828名無しさん@そうだ選挙にいこう:2011/09/10(土) 00:01:15.18
        ____
        /     \
     /   ⌒  ⌒ \   とんこつ
   /    (●)  (●) \
    |   、" ゙)(__人__)"  )    ___________
   \      。` ⌒゚:j´ ,/ j゙~~| | |             |
__/          \  |__| | |             |
| | /   ,              \n||  | |             |
| | /   /         r.  ( こ) | |             |
| | | ⌒ ーnnn        |\ (⊆ソ .|_|___________|
 ̄ \__、("二) ̄ ̄ ̄ ̄ ̄l二二l二二  _|_|__|_
829名無しさん@そうだ選挙にいこう:2011/09/10(土) 19:22:55.09
今つないでるDB名とかやってる内容とか進行状況とかをフォーム上に表示させたいんですが(単なるはったり)
プログラム中の適当なところにdebug.printいれてコンソールっぽく出力できるといいんだけど。
どうすればいいでしょうか?
830名無しさん@そうだ選挙にいこう:2011/09/10(土) 20:09:54.78
Accessの動作を停止しました みたいなの何なの?
せっかく作ったのにデザインで開こうとしても落ちる
831名無しさん@そうだ選挙にいこう:2011/09/10(土) 20:10:25.46
>>830
作りなおせ
832名無しさん@そうだ選挙にいこう:2011/09/10(土) 20:11:20.79
>>829
進行状況ってさ、どこから始まってどこで終わるの?
接続DB名は簡単に取得できるが、内容ってなんだよ。誰が決めるの?
833829:2011/09/10(土) 21:03:07.39
>>832
すいません。進行状況ってほどじゃなくて、「今DBに繋ぎましたよ」とか「データのコピーが終わりましたよ」とか
「しばらくバックアップしてないけど大丈夫かよ」とか「今月はデータ登録数がやけに多いですね」とか
メッセージボックス出すほどでもない情報を適宜選んで流したいんです。

今まではテキストボックスを上下に並べて配列化してメッセージが増えるたびに各段をずらしたり消したり
めんどくさいことやってたんで。
834名無しさん@そうだ選挙にいこう:2011/09/10(土) 23:21:23.04
>>833
StatusBarじゃダメなん?
835名無しさん@そうだ選挙にいこう:2011/09/10(土) 23:46:40.01
>>832
小さなフォームをポップアップで表示。処理終了直前にcloseでいいんじゃね。
836名無しさん@そうだ選挙にいこう:2011/09/11(日) 21:43:47.38
桐V9-2012 キターーーーーーーーーーーー!!
837名無しさん@そうだ選挙にいこう:2011/09/12(月) 03:30:31.30
毎日データため込んで月に1度、1万件くらいのデータを集計するだけの使用。
97で作ってXPになった時にリニューアル。端末は2台、せいぜい3台。
業務拡張で処理件数見込みが2倍、テーブルを改造する必要もあって
この際だからMySQLに移行しようとDAOをADOに切り替えたり日本語名の
テーブル名もろもろをローマ字に書き直したり新機能付け加えたり。
10日で全体の三分の一くらいまできたけどだんだん気が萎えてきた。
もしかしてこの程度の規模だったらmdbにDAOで十分かな、やっぱり、、、
838名無しさん@そうだ選挙にいこう:2011/09/12(月) 04:31:54.48
>>837
いけるっちゃいける
839名無しさん@そうだ選挙にいこう:2011/09/12(月) 16:44:41.40
四角形のオブジェクト名教えて
単なるBoxだと思ってたら違うっぽい
840名無しさん@そうだ選挙にいこう:2011/09/12(月) 16:52:45.16
>>837
そもそも、ADOにする理由がない。

MSはDAOを推奨しているし、MySQLへは、MySQL Migration ToolkitでMDBをそのまま
移植できるし。
841名無しさん@そうだ選挙にいこう:2011/09/12(月) 20:38:35.29
AcControlType でいうところの、acRectangle
842名無しさん@そうだ選挙にいこう:2011/09/12(月) 20:41:30.07
【 システム環境  】 WindowsXPor7, Access まだ持ってません
【 VBAが使えるか 】 はい(若干)
【 VBAでの回答  】 必要ないと思います
【 検索キーワード 】 なんて検索していいかわかりません。

Accessを全く知らない初心者です
やりたい事があってこんな事をAccessでできるか教えて下さい(Google等で調べましたが分かりませんでした)

仕事で毎日チェックシートを何種類も何枚も使用しています
(製造する製品によって違う)
製品を番号で指定して、あらかじめ登録してあるチェックシートの呼び出し
仕事中にチェックをして、保存
そのチェックや入力した数値を抽出する
チェックシートも呼び出して確認する

この様な事なのですが、Accessで可能でしょうか?
またはどんな事を学べば可能でしょうか?
843名無しさん@そうだ選挙にいこう:2011/09/12(月) 21:26:54.12
>>842
やりたいことは、非常に簡単な事です

> この様な事なのですが、Accessで可能でしょうか?
可能です

まだAccess持ってないなら、やりたいことはカード型データベースで十分可能ですから
こういうので十分
http://www.dicre.com/soft/tcard.htm

> またはどんな事を学べば可能でしょうか?
普通にExcel使える人なら、ヘルプ見ながらで可能な範囲
844名無しさん@そうだ選挙にいこう:2011/09/12(月) 21:29:13.24
>>843
なめてんのかksg
845名無しさん@そうだ選挙にいこう:2011/09/12(月) 21:32:09.77
製品分のテーブルとカードフォームがあれば良いんでしょ
846名無しさん@そうだ選挙にいこう:2011/09/12(月) 21:53:08.68
>>843
早速の返信ありがとうございます

>普通にExcel使える人なら、ヘルプ見ながらで可能な範囲
確かにExcelでも可能ですが、チェックシートへの入力をタブレットPCでと考えているため(現場で行う為)
なるべく作業を最小限に済ませたいと考えています
製品毎のエクセルブックを作成して、その日作る分をコピー、名前の変更等せずに行いたい為
Accessと考えてましたが、Accessをそれに使うにはオーバースペックでしょうか?
後、Accessで作成したデータベースに入力するにはやはりAccessが必要ですか?
847名無しさん@そうだ選挙にいこう:2011/09/12(月) 22:00:35.45
>普通にExcel使える人なら、ヘルプ見ながらで可能な範囲

普通にExcel使える人なら、AccessでAccessのヘルプ見ながらで可能な範囲

> Accessと考えてましたが、Accessをそれに使うにはオーバースペックでしょうか?
*Accessは安いから、そういうこと考えないでAccessで良いんじゃない

> 後、Accessで作成したデータベースに入力するにはやはりAccessが必要ですか?
Window標準のACE形式のaccdbファイルになるから無くても可能だけど
Accessないとメンドクサイ
*Accessは安いから、そういうこと考えないでAccessで良いんじゃない
848名無しさん@そうだ選挙にいこう:2011/09/12(月) 22:05:58.49
意味が違ったかな?

> 後、Accessで作成したデータベースに入力するにはやはりAccessが必要ですか?
無料のランタイムがあるから、開発用にAccess1つ買えば、実行用は無料
849名無しさん@そうだ選挙にいこう:2011/09/12(月) 22:51:21.71
具体例がないのに、どう説明しろというんだ
850名無しさん@そうだ選挙にいこう:2011/09/12(月) 22:52:06.64
Accessで神経すり減らし、精神的に参りました。
二度と関わりたくないです。
障害障害者手帳持ちのメンヘラの俺には適応性がありませんでした。
851名無しさん@そうだ選挙にいこう:2011/09/12(月) 23:20:12.40
>>850
おつかれ
852名無しさん@そうだ選挙にいこう:2011/09/12(月) 23:21:56.63
Accessが悪いんじゃないぞ。
Accessで開発させる会社やクライアントが悪いんだ。
853名無しさん@そうだ選挙にいこう:2011/09/13(火) 00:02:34.02
俺も障害者手帳持ちのAccess使いだが、楽しーぞ。
854名無しさん@そうだ選挙にいこう:2011/09/13(火) 00:21:37.01
access使いには障害者しかいねーのか、accessつかうと障害者になるのか
855名無しさん@そうだ選挙にいこう:2011/09/13(火) 02:14:26.14
タブってあまり使わないよね ププ
856名無しさん@そうだ選挙にいこう:2011/09/13(火) 08:21:03.47
>>848
いい時代になったよなぁ。

ランタイム無料配布可能になって非常にありがたい。
857名無しさん@そうだ選挙にいこう:2011/09/13(火) 08:43:02.60
桐使ってる俺は勝ち組
858名無しさん@そうだ選挙にいこう:2011/09/13(火) 16:53:47.21
すみません。初心者ですので、低レベルな質問だと思いますが、すみません。
名簿テーブルの「名前」フィールドにある文字をレポートで印刷する際に”様”を付けたいんですが、
レポートのほうで、=[名前] & "様" としても、印刷プレビューでみると#エラーになってしまいます。

グーグルで検索して、=[名前] & "様" とするといいみたいなことを発見したのですが、
うまくいきません・・・

どのようにすればいいのでしょうか?教えてください。
859名無しさん@そうだ選挙にいこう:2011/09/13(火) 16:54:25.58
上げわすれました
860858:2011/09/13(火) 17:42:00.54
自己解決しました・・すみません。
861名無しさん@そうだ選挙にいこう:2011/09/13(火) 21:15:38.46
循環参照か
862名無しさん@そうだ選挙にいこう:2011/09/13(火) 23:39:11.27
>>861
テキスト型じゃないの?
863名無しさん@そうだ選挙にいこう:2011/09/13(火) 23:45:31.23
済んだ話にいつまでこだわってんだ。
そんなに答えてヒーローになりたかったのかwwwww
864名無しさん@そうだ選挙にいこう:2011/09/14(水) 03:42:51.58
最初から氏名欄に様を入れて入力しておけば悩む必要はないんだが。

実際、某毎糞ソフトのアドレス帳はそうしてる。
865名無しさん@そうだ選挙にいこう:2011/09/14(水) 07:06:50.18
解決してると思うが、敬称欄というフィールドを別に設けたほうがいい
法人の場合は御中だったり、個人の場合は様だったりで使い分けるから
866名無しさん@そうだ選挙にいこう:2011/09/14(水) 15:18:38.14
フォーム、サブフォーム間で集計関数Sum()が使えない。
ごく普通にサブフォームの「金額」の合計を=Sum([金額])でフォームに表示したいんだが出来ない。
Sumを外して=[金額]とすると個々のレコードの金額が表示されるから設定は間違ってないはす。
レコードソースはリンクテーブルへのSQL文。
867名無しさん@そうだ選挙にいこう:2011/09/14(水) 15:38:56.82
>>866
sum関数をつかったテキストボックスを置く場所を間違えている。

横の合計ならクエリでやれば済む話だが、縦計を取るときには、詳細セクションの外のセクションに置かなければ
ならない。
868名無しさん@そうだ選挙にいこう:2011/09/14(水) 16:16:28.00
メインフォームに表示したいのか?
869名無しさん@そうだ選挙にいこう:2011/09/14(水) 18:03:30.51
いや、普通にサブフォームのフォームフッターに置いててメインフォームに出したいんだが。
昔はそれでちゃんと出来てたのがテーブル構造やSQLをいじったら出来なくなった。
その時はクエリがソースだったけど今は外部DBへSQLして set me.recordset=rs
なんてややこしいことやってるからかな。
870名無しさん@そうだ選挙にいこう:2011/09/14(水) 18:09:07.39
> =Sum([金額])

[金額] の部分はコントロール名じゃなく、レコードソースの目的フィールド名 になってる?
871名無しさん@そうだ選挙にいこう:2011/09/14(水) 18:26:55.86
>>870
うん。
>Sumを外して=[金額]とすると個々のレコードの金額が表示される
から(レコードを動くごとにメインフォームの金額も更新される)
参照はうまく出来てると思うんだよね。
872名無しさん@そうだ選挙にいこう:2011/09/15(木) 21:49:31.01
Sam
873名無しさん@そうだ選挙にいこう:2011/09/15(木) 22:56:11.96
>>357
桐にしとけ、簡単だぞ、どころでなく普通に基本
874名無しさん@そうだ選挙にいこう:2011/09/16(金) 01:19:12.51
【 システム環境  】 WindowsXP, Access2003
【 VBAが使えるか 】 はい(若干)
【 VBAでの回答  】 必要ないと思います
【 検索キーワード 】 なんて検索していいかわかりません。

次のような「送ってはいけない地域リスト」があります。(東京都、千葉県、神奈川県には送ってはならない。埼玉県は川口市と所沢市のみ送ってはならない)
埼玉県 川口市
埼玉県 所沢市
東京都
千葉県
神奈川県

次のようなデータの場合
埼玉県 秩父市 ○○○
埼玉県 さいたま市 ○○○
東京都 八王子市 ○○○
埼玉県 所沢市 ○○○
東京都 杉並区 ○○○
千葉県 茂原市 ○○○
神奈川県 横浜市 ○○○
茨城県 取手市 ○○○

「送って良いデータ」は次のような結果を出したいと思います。
埼玉県 秩父市 ○○○
埼玉県 さいたま市 ○○○
茨城県 取手市 ○○○


現在、↓の手順で2つのクエリをドッキングしてやってますが、これを一度のクエリで出来ないものでしょうか?
@東京都、千葉県、神奈川県にマッチングしなかったものをクエリで抽出。
A埼玉県の中で、川口市、所沢市にマッチングしなかったものをクエリで抽出。
B1と2をドッキング
875名無しさん@そうだ選挙にいこう:2011/09/16(金) 04:28:17.87
>>874
住所のテーブル構成はどうなっているか、詳細希望
876875:2011/09/16(金) 05:20:29.66
>>874
補足です。
テーブルの詳細というかフィールド一覧が欲しい理由は、どういう区分でデータを保存してるか知りたいから。
たとえば、>>874記載の例だと、
青森県なんとか市xxx 東京都選挙管理委員会青森支部局
とかいう住所がもし存在したら、テキトーなクエリだと正確な抽出ができなくなる恐れがあるので、どういうテーブル設計か聞きたかったです
877874:2011/09/16(金) 11:15:05.14
>876
お答えありがとうございます。
以下のような形です。
都道府県、市郡、区町村以下の住所

埼玉県、さいたま市、大宮区◯◯5丁目◯番地◯◯マンション801
埼玉県、秩父郡、◯◯村◯◯◯マンション505
東京都、、品川区◯◯5丁目◯番地◯◯アパート202
東京都、、新宿区◯◯4丁目◯番地◯◯ビル705
東京都、立川市、◯◯3丁目◯番地◯号
神奈川県、横浜市、磯子区◯◯3丁目◯番地◯号◯◯ビル5階
神奈川県、鎌倉市、◯◯2丁目◯◯
878名無しさん@そうだ選挙にいこう:2011/09/16(金) 18:32:55.67
ご意見くださいアクセス2010です

リンクテーブルをレコードソースにしたフォームがあって、コードでフォームを開きます
リンクテーブルの作成→フォームを開く→リンクテーブルの削除
要するにフォームを開く瞬間だけリンクテーブルが存在します

フォームでデータの追加や編集が出来ます、リクエリも普通に出来ます

何か問題あると思いますか?
879875:2011/09/16(金) 18:54:10.45
>>878
共有した時にコケる可能性がある
そのデータたちはどこへいくんだ?
そのような設計にした背景を知りたい
880878:2011/09/16(金) 19:19:54.80
使用者にテーブルを絶対に絶対に絶対に見せないようにしたいため
サーバー使わず原則スタンドアロンです
881名無しさん@そうだ選挙にいこう:2011/09/16(金) 20:45:06.77
フォームを開いたタイミングでAccessのDB型のTempファイルを作って
大本から必要な部分だけを抜き取ってテーブルコピー、閉じるタイミングで
Temp削除、のほうが簡単で安全な気がする。
882名無しさん@そうだ選挙にいこう:2011/09/16(金) 21:54:59.60
それだと、フォームを開いた状態の時に、別のアクセス立ち上げてDAOで接続されてTempを弄られませんかね
883名無しさん@そうだ選挙にいこう:2011/09/17(土) 07:11:30.09
え、そんなにAccessってダメなの?
内部統制的にAccess使って基幹系で開発するのはアウトになっちゃうじゃん。
上場企業向きじゃないな。
884名無しさん@そうだ選挙にいこう:2011/09/17(土) 07:28:19.44
いよいよおっさんプログラマーの淘汰がはじまるな
ttp://plusd.itmedia.co.jp/pcuser/articles/1109/16/news042.html
885名無しさん@そうだ選挙にいこう:2011/09/17(土) 11:16:10.66
Accessで基幹系は間違ってるだろw
886名無しさん@そうだ選挙にいこう:2011/09/17(土) 11:48:59.22
>>878
それ何か良さそう。一度リンク元テーブルとの接続が確立するとフォームから問題なく編集できますね。
887名無しさん@そうだ選挙にいこう:2011/09/18(日) 21:35:47.15
AccessMVPのMukkuMukuさんの意見を聞きたいな >>878
888名無しさん@そうだ選挙にいこう:2011/09/18(日) 23:57:45.12
俺です。
>>878がやりたいことは、テーブルへの操作を絶対にさせたくないということだよね。
残念だけど提示している内容ではそれはなしえないかな。
強制終了されることもあるのだから、抑制方法としてもちょっとどうかなと。
BEにパスワードがかかっていたとしても、フォームを開いているときリンクテーブルは存在しているのだから、
この状態で別プロセスのAccessを使ってFEからテーブルをインポートすることができるはず。
テーブルインポートいいつつも、リンクテーブルをインポートしてくるので結果的にはリンクテーブルが作成
できてしまうね。つーことで、テーブル触り放題となんじゃね?
889名無しさん@そうだ選挙にいこう:2011/09/19(月) 15:00:50.18
俺さん、有難う
リンクテーブル即消ししても存在してるってことね
890名無しさん@そうだ選挙にいこう:2011/09/19(月) 15:33:37.48
お洒落なフォームが作りたいんですけど、なにか参考になるサイト教えて
891名無しさん@そうだ選挙にいこう:2011/09/19(月) 16:06:36.41
>>889
ごめんごめん推敲しなかったので誤解を生んだかもしれない。
確かにリンクテーブルを削除した時点で外部からインポートしようということはできなくなるよ。
わずかな時間だけれども確実とは言えないよね。って感じで。>>897のの通りのこともありえそうだし
全体的にズッコケたときどうするべという気持ちで書き込んだ。
892名無しさん@そうだ選挙にいこう:2011/09/19(月) 16:22:09.16
またまたごめんごめん。>>897じゃなくて>>879ね。

Private Sub Form_Open(Cancel As Integer)
Me.RecordSource = "select field1, field2 from table1 in BE.accdb"
End Sub
にすりゃいいだけの話だったね。
893名無しさん@そうだ選挙にいこう:2011/09/19(月) 21:27:23.19
手軽にセキュリティ求めるなら桐にしとけってことだな。
セキュア桐ってのがあってだな、ファイル持ってかれてパスワード知られても開けない。
894名無しさん@そうだ選挙にいこう:2011/09/19(月) 21:43:33.53
>>892
それだと、フォーム開いた直後に Me.RecordSource="" にすると
編集はおろか表示さえできないんじゃないの?
895名無しさん@そうだ選挙にいこう:2011/09/19(月) 22:07:45.95
抽出したデータの件数だけフォーム上にチェックボックスを並べたいんだけど
アクセスのVBAでコントロールを作成することってできます?
896名無しさん@そうだ選挙にいこう:2011/09/19(月) 22:17:44.53
できます
897名無しさん@そうだ選挙にいこう:2011/09/19(月) 22:23:25.32
>>896
d

自分で調べてやってみるけどヒントちょーだい。
コントロール名に数字を混ぜて変数や結合でいじって配列っぽく動かすのはできます。
作り方のってるページないかな。あるのはエクセルのばっかりで。
898名無しさん@そうだ選挙にいこう:2011/09/19(月) 22:39:54.25
Application.CreateControl メソッド
899名無しさん@そうだ選挙にいこう:2011/09/19(月) 23:17:23.05
>>898
ありがとう。ちょっと勉強してくる。
900名無しさん@そうだ選挙にいこう:2011/09/20(火) 00:06:48.78
>>894
あーそーだったね。ごめんごめん
だけどさ、BEには当然パスワードがあるだろうけど、
フォームを開いてリンクテーブルAppend/Deleteしても接続は維持されてるから、
パスワードを聞かれることなくリンクテーブル作れちゃうんじゃね?
となると結局のところBypasskeyなりUIの制御が必要になるんじゃないかな。
901名無しさん@そうだ選挙にいこう:2011/09/20(火) 00:29:40.65
そーいえば、
テーブルイベントを使ってテーブル直接操作だけを読み取り専用にするってことは可能だ。
実装の実績はないけど。
902名無しさん@そうだ選挙にいこう:2011/09/20(火) 08:46:02.96
永遠にセキュリティの穴を塞ぎ続けるWindowsと同じだな
903名無しさん@そうだ選挙にいこう:2011/09/20(火) 10:16:07.46
仕様だからうまく付き合わないと徒労に終わる。
904名無しさん@そうだ選挙にいこう:2011/09/20(火) 21:15:30.07
ACCESS2003、OSはXPです。

フォーム上に西暦で年を入力するテキストボックスを作ってあります。
(その年は計算で使っています。)
このテキストボックスへの設定だけで、
例えば”11”と入力すると”2011”に自動で変換するようにする方法
はありますか?
905名無しさん@そうだ選挙にいこう:2011/09/20(火) 22:35:41.60
>>904
更新後処理あたりで単純に2000を足したものを返せばいいんじゃないの。
1900年代はとか、2100年になったらとかいろいろな問題は出るが。
906名無しさん@そうだ選挙にいこう:2011/09/21(水) 10:37:10.71
>>905
ありがとうございます。できました。

907名無しさん@そうだ選挙にいこう:2011/09/21(水) 15:07:55.08
>>906
具体的に動やったらうまく行ったのかを書くと掲示板としての過去ログとしての効果があがるぞ
11と書いたら2011になるけど、2011と書いたら4011とならずに2011に補正されるところまで書いてほしい
908名無しさん@そうだ選挙にいこう:2011/09/21(水) 16:57:01.84
>>907
こうしました。

Private Sub 年_AfterUpdate()

If Me!年 >= 1 And Me!年 <= 99 Then
Me!年 = 2000 + Me!年
End If

End Sub

1から99までの数字を入力すると入力補助が働いて2000がプラスされると
いる仕様です。
もし1999以下や2100以上の年を入力したい時は4ケタを入力してもらうという考えです。
(このシステムではその様な年を入れることはないんですが)

本当は1から50までが2000プラスで51から99までは1900とかした方が汎用性は
あると思いますが、今回は1999年以下の年を入力することはないシステムだったので
この様にシンプルにしました。




909名無しさん@そうだ選挙にいこう:2011/09/21(水) 17:04:30.95
これでこの手の質問は
http://hibari.2ch.net/test/read.cgi/bsoft/1287268291/908
で解決だな
910名無しさん@そうだ選挙にいこう:2011/09/21(水) 19:32:30.93
「Accessは動作を停止しました」って原因はなんでしょう?
win7で2011にしてからやたらと出るけど、
自分のプログラムが悪いのかな?ググってもあまりヒットしないから
そんなに頻繁に出る症状ではないのかな?
911名無しさん@そうだ選挙にいこう:2011/09/21(水) 19:51:42.25
2011ってなんだよって。
SP1にしてからってことなら、デコンパイルしろい。
時間的余裕があるならSP1インストールしなおしてみろい。
912名無しさん@そうだ選挙にいこう:2011/09/21(水) 20:32:31.64
>>908,909

BeforUpdate の方が良いんじゃね
913名無しさん@そうだ選挙にいこう:2011/09/22(木) 02:54:32.50
重いプログラム走らせるとすぐに画面が白くなって(応答なし)って出るんだよね。
あきらめてタスクマネージャー呼んで強制終了させたくなるんだけど実は裏で健気に働き続けてるんだよな。
この(応答なし)ってなんとかならないもんなのかねえ、無駄に殺されたアクセス君数知れずなんじゃね?
914名無しさん@そうだ選挙にいこう:2011/09/22(木) 03:04:16.85
あ、これエクセルのVBAからの時だった
915名無しさん@そうだ選挙にいこう:2011/09/22(木) 03:21:20.30
チラ裏連投スマン

100個近いMDBファイルに分かれたテーブル(同じ構造;1テーブルあたり約1万件))を
MySQL上のテーブルに全部繋ぎ合わせる作業、VBAでファイル名のリストから
繰り返し処理するようにしたけど絶望的に遅い。
Accdbのテーブルで繋ぐようにして、RAMディスクを作り全部のファイルをそこに置いたら
感動的に激速。マジお勧め。
HDDで1ファイル処理するのと同じくらいの速さで作業完了。
RamディスクはDATARAM社のフリーのものを使いました。

似たようなことをする人の参考のために。
916名無しさん@そうだ選挙にいこう:2011/09/22(木) 11:19:22.01
>>912
試しに
Private Sub 年_BeforeUpdate(Cancel As Integer)

If Me!年 >= 1 And Me!年 <= 99 Then
Me!年 = 2000 + Me!年
End If

End Sub
にすると

”実行時エラー2115
「更新前処理プロティ又はこのフィールドの入力規則プロパティに設定したマクロ又は関数のために、このフィールドのデータを
保存できません。」”
がでます。
BeforeUpdateですと
設定したフィールド自身の代入には使えない??
917名無しさん@そうだ選挙にいこう:2011/09/22(木) 12:48:28.72
2003ですか、追加クエリで別DBにテーブルを追加すると、ファイルサイズが増えてしまうのですが
400MBのDBから追加クエリすると、移転先のDBが2Gいったり・・・
918名無しさん@そうだ選挙にいこう:2011/09/22(木) 15:54:32.03
>>917
それって、「データーベースの最適化/修復」を行うと減ります?
そうだとすると手動で任意の時に最適化するしかないのかな・・・
919名無しさん@そうだ選挙にいこう:2011/09/22(木) 16:00:34.54
追加元の方を1回最適化すると以後OKにならないかな
920名無しさん@そうだ選挙にいこう:2011/09/23(金) 01:12:26.05
>>916

BeforeUpdateの中では、値の代入は行えないよ。
ヘルプにも書いてあったと思う。
921名無しさん@そうだ選挙にいこう:2011/09/23(金) 02:44:26.96
つまり >>909 が真理
922 忍法帖【Lv=38,xxxPT】 :2011/09/24(土) 03:52:55.01
923名無しさん@そうだ選挙にいこう:2011/09/24(土) 18:50:07.05
ACCESS2003です。
デザインビューでレポートなどを見ると、テキストボックスの枠の中はコントロールソース(=で始まる式)が表示されていますが
これをテキストボックスの「名前」を表示するのに変更することはできますでしょうか?
今名前を設定中なのですが、テキストボックスが大量(500個以上)にあって、プロパティを開いて名前を確認するのが大変なのです。
924名無しさん@そうだ選挙にいこう:2011/09/24(土) 21:02:50.96
できますん
925名無しさん@そうだ選挙にいこう:2011/09/25(日) 07:56:27.95
使用期限が過ぎたアクセスと、アクセスのランタイムって
機能的には一緒でしょうか
926 忍法帖【Lv=39,xxxPT】 :2011/09/25(日) 11:58:06.60
>>925
>使用期限が過ぎたアクセス
この段階でこの質問には答えない
927名無しさん@そうだ選挙にいこう:2011/09/25(日) 12:11:05.10
Mysty HeartBreak
928名無しさん@そうだ選挙にいこう:2011/09/25(日) 12:40:57.59
答えられない奴が、答えない ってワロタ
929名無しさん@そうだ選挙にいこう:2011/09/25(日) 16:05:59.69
>>923
連結で作ればイコールなんて入らなくて、コントロール名がコントロールソース名じゃなかったっけ。
どういう状況なのか今ひとつ理解できていないけど、逆に考えればいいんじゃないの。
コントロールソース名を取得して、それをコントロール名(今回の場合はテキストボックス名)にするとか。
フォームではコントロール名変更を自動化したことはあるけど、レポートはできたっけかなぁ。
930名無しさん@そうだ選挙にいこう:2011/09/25(日) 19:10:41.88
>>929
そう言われるとレポート特殊なのかもしれません。レコードソースの指定がなくて、

テキストボックスを作ってコントロールソースに
=DLookUp("金額","[新集計表テーブル]","[集計キー]=" & Forms!集計表画面!今年 & "041100")
の様な式を書いてあります。(最初にフォーム「集計表画面」の今年に作表年を入力します。)
テキストボックスには自動で名前が付くのですが、後からそれを分かりやすいように
”A店A部門今年1月計”の様な名前を付けていっています。
他のテキストボックスで半期計や通年計にも使いますので分かりやすい、ルールに従った
名前にしようとしています。(このレポートは今、作成途中です。)

A店A部門今年4月計  A店A部門今年5月計・・・
A店A部門前年4月計        ・
A店A部門昨年同月比       ・
A店A部門今年累積
A店B部門今年4月計       ・
A店B部門前年4月計
A店B部門昨年同月比
A店B部門今年累積
  A店今年4月合計
  A店前年4月合計
  A店昨年同月比
  A店今年累積

店は3つ、部門はそれぞれ2つの固定です。

という状況です。


931名無しさん@そうだ選挙にいこう:2011/09/25(日) 19:38:07.50
>>930

>=DLookUp("金額","[新集計表テーブル]","[集計キー]=" & Forms!集計表画面!今年 & "041100")

これの最後にある"041100"ってなに? 店舗コード?
932名無しさん@そうだ選挙にいこう:2011/09/25(日) 19:50:05.49
>>931
すいません。
左から
04 が4月
1 が店舗コード
100 が売上区分という意味で

新集計表テーブルは月別、店舗コード別、売上区分別に
金額集計が済んでいるテーブルです。
フィールドは「集計キー」と「金額」です。

A店A部門今年4月計のコントロールソースに
=DLookUp("金額","[新集計表テーブル]","[集計キー]=" & Forms!集計表画面!今年 & "041100")
が入っていて、04(4月)1(A店)100(A部門)の金額を拾ってきます。

(説明が前後しますが「金額」とは売上明細データから集計した売上金額です。)
933名無しさん@そうだ選挙にいこう:2011/09/25(日) 19:52:39.86
>>932
訂正:新集計表テーブルは年別、月別、店舗コード別、売上区分別に
金額集計が済んでいるテーブルです。
フィールドは「集計キー」と「金額」です。

934名無しさん@そうだ選挙にいこう:2011/09/25(日) 20:00:20.15
>>932
つうことは、この数字をコントロールソースから拾えば
テキスボックスの名前修正は自動化できるって言う話しじゃないか。
935名無しさん@そうだ選挙にいこう:2011/09/25(日) 20:26:25.16
>>934
あーそうですね
ありがとうございます。
ちょっとやってみます。
(私だとすぐ作れないと思いますが)

良く考えたら名前をそのまま「041100」とかでも
いいですね。

936名無しさん@そうだ選挙にいこう:2011/09/25(日) 20:32:03.57
>>935
別に意地悪をしたかったわけじゃないからね。
手作業だと大変そうだから、自動化できないか考えていただけだから。
で、自動化するということは規則性を探さなくてはいけないわけで──ということなんだよ。
937名無しさん@そうだ選挙にいこう:2011/09/25(日) 20:35:23.39
>>936
ありがとうございます。
(意地悪とは思ってませんのでw)
938925:2011/09/25(日) 23:52:10.39
試用版って期限がきて機能限定モードになるけど
ビューアとして使えるって認識なんだけどまずい?
939 忍法帖【Lv=40,xxxPT】 :2011/09/26(月) 20:43:57.60
>>938
よくはない
940名無しさん@そうだ選挙にいこう:2011/09/26(月) 21:38:22.99
>>938
それでOK、MSが表明している通り期限切れたら作成と保存が出来なくなります。
941名無しさん@そうだ選挙にいこう:2011/09/28(水) 22:45:53.92
苦節10年、やっとユーザーにテーブル見せない方法を開発した
世界中ググっても書いてないアクセスのDarkSide
組み込み右クリックもコピー出来たし
やっと桐からオサラバ出来る
長かったよ(-_-;)
942名無しさん@そうだ選挙にいこう:2011/09/28(水) 23:59:04.24
アンドキュメンテッドアトリビュートあるの知らないの?
943名無しさん@そうだ選挙にいこう:2011/09/29(木) 01:46:15.55
10年で成果がそれなのか。苦労してるんだな。
944名無しさん@そうだ選挙にいこう:2011/09/29(木) 02:30:42.89
日記乙
945名無しさん@そうだ選挙にいこう:2011/09/29(木) 08:30:15.15
>>942
そんなの無い
946名無しさん@そうだ選挙にいこう:2011/09/29(木) 22:28:37.99
レコードセットRsでRs.update したばかりのレコードにつけられたオートナンバーフィールドを知りたい時って

rs.update
rs.requery
rs.movelast

でいいんですかね?
データ入れるのはこの端末だけで他からはデータが来ないと前提。
947名無しさん@そうだ選挙にいこう:2011/09/29(木) 23:19:43.23
updateした段階で仮定されているはずだから

rs.update
rs.オートナンバーフィールドで参照できるはず。
948名無しさん@そうだ選挙にいこう:2011/09/30(金) 03:25:24.63
>>947
d
あれ、やっぱNULLが来ちゃう。ADOだからかな。
949名無しさん@そうだ選挙にいこう:2011/09/30(金) 04:28:26.68
>>948
rs.Addnew
rs!どこかのフィールド
rs.Update

とかじゃないの。てっきりレコード追加処理かと思っていたけど。
あと仮定じゃなくて確定ね。
950名無しさん@そうだ選挙にいこう:2011/09/30(金) 11:22:00.54
>941

クライアント側とサーバー側に分けて、
データ全てのやり取りをADOやDAOで処理すればテーブルを見せなくて
済むはずなんだが…。
951941:2011/09/30(金) 11:49:08.25
952名無しさん@そうだ選挙にいこう:2011/09/30(金) 15:08:50.48
未だにAccess97を使用してるんですが、最近「式に未定義関数nzがあります」
と言うエラーが出るようになりました。

参照設定には参照不可になっているものはありません。修復すると直るのですが、
しばらくしたらまたなります。

もう諦めてnzを使わないように書き換えたのですが、今度は他の箇所で出るように
なってしまいました。

これって原因と対策はなんでしょう?分かる方教えて下さい。
953名無しさん@そうだ選挙にいこう:2011/09/30(金) 15:36:09.74
Access97のサポートは終了しました
954名無しさん@そうだ選挙にいこう:2011/09/30(金) 16:56:23.22
>>952
ぜひ、Access2010へ乗り換えましょう。
955名無しさん@そうだ選挙にいこう:2011/09/30(金) 20:20:19.15
>>952
同じ目にあって、結局面倒なことやってメッセージ消した記憶があります。
でもなんだっけ?どうしたかは、忘れちゃったよ。
丁寧に発生箇所を探していくのです。
97でも本格的な開発は可能です。実際やってたので。
956名無しさん@そうだ選挙にいこう:2011/09/30(金) 20:54:15.26
フォームやプロシージャ間でのデータのやりとりが多いのでやたらとパブリック変数を使ってますが
こういうやり方でいいんでしょうか?一応使う前には0や""を代入して混乱しないようにしてます。
フォームに不可視ボックスを置いてフォーム参照するやり方の方がいいのでしょうか?
主義の問題かもしれませんがどっちが主流なんでしょう。
957名無しさん@そうだ選挙にいこう:2011/09/30(金) 21:37:19.28
変数使わずに直接参照できないのか?
958名無しさん@そうだ選挙にいこう:2011/09/30(金) 22:19:26.05
どのフォームのどのボックスだとか直接記述すると長ったらしくて見づらいし
そのうちどれがなんだったかわかんなくなってくるし。
かといっていちいちsetなんとかするのも面倒。
直感的にわかる名前の変数を使いまわす方が楽なのかな、と。
959名無しさん@そうだ選挙にいこう:2011/09/30(金) 23:26:29.26
>>958
なんとなくすべての変数をパブリックにしているのならともかく、
明確な意図を持ってやっているのなら問題ないでしょ。
960名無しさん@そうだ選挙にいこう:2011/10/01(土) 03:40:10.50
>>959
ども。
特にルール違反とか非常識ってわけじゃないんだね。
961名無しさん@そうだ選挙にいこう:2011/10/02(日) 13:55:07.04
ACCESS2003です。
何かをした後からデザインビューの上と左側にあった目盛の様なバーが表示されなくなりました。
どのACCESSファイルを開いても同じなので、ACCESSのシステム自体の設定を変更してしまった
のだと思います。
これはどこの設定を変更するれば直るでしょうか?
962名無しさん@そうだ選挙にいこう:2011/10/02(日) 14:09:23.61
>>961
すみません自己解決しました。
「表示」の中の「ルーラー」のチェックのON/OFF
で表示、非表示になるのですね。
963名無しさん@そうだ選挙にいこう:2011/10/02(日) 17:33:42.51
また日記か
964952:2011/10/03(月) 18:43:29.60
>>953-954
ありがとうございます。
乗り換えたいのは山々ですが、顧客から使えと言って渡されたのがAccess97のファイルなんです(;_;)

>>955
どこで問題が発生するのか順番に見ていくってことですね。
大変ですが、がんばってみます。ありがとうございました。
965名無しさん@そうだ選挙にいこう:2011/10/03(月) 21:53:43.49
>>964
エラーメッセージで検索すると説明してくれているサイトいくつか出てくるんですが、、、。
966名無しさん@そうだ選挙にいこう:2011/10/05(水) 14:16:14.57
>>965
見てみたのですが、大抵は参照不可のライブラリを参照しているため。
って話だったのです、、、

今回と同じような症状についてかいてあるサイトありましたら、是非教えてくださいm(__)m
967名無しさん@そうだ選挙にいこう:2011/10/05(水) 15:36:38.90
>>966
http://kijibato.sblo.jp/article/29120976.html
どうも、バグの可能性が・・・

ということで、検証してみてくださいな。
968952:2011/10/06(木) 11:26:47.35
>>967
ありがとうございます。ODBC接続はしてないのです・・・
NZ関数も使わないように書き換えたのですが、今度は他のユーザ定義関数で、
エラーが出るようになってしまいました・・・
969名無しさん@そうだ選挙にいこう:2011/10/06(木) 12:15:49.14
>>968
参照設定で切れているものがあるとか、DAOとADOの参照設定の順序がいつもと
違うとか、Nz関数とは関係ない部分に問題があるんだと思いますよ。
970名無しさん@そうだ選挙にいこう:2011/10/06(木) 12:40:08.05
>>967
フィールド名とか関数名でヤバイ名前を使っているんじゃないの。
予約語とか全角英数で始まる名前とか。
971 忍法帖【Lv=40,xxxPT】 :2011/10/06(木) 12:52:05.50
というかコード晒せよ
972名無しさん@そうだ選挙にいこう:2011/10/06(木) 13:01:00.12
>>971
コードで収拾がつくかな。
データはいらんが、ファイルうpぐらいしてもらわないと原因が特定できそうもなさそうだが。
973941:2011/10/06(木) 14:39:23.41
時間取れたので作った20分
検証願います

ユーザーにテーブル見せない方法
http://up1m.ko.gs/src/koups862.zip
974名無しさん@そうだ選挙にいこう:2011/10/06(木) 17:25:32.33
>>973
パスワードが正しくありませんってなってお話にならん状態
975名無しさん@そうだ選挙にいこう:2011/10/06(木) 18:21:03.27
>>973
スゲー、今のところ突破できん。応談で売ってくれ。
976名無しさん@そうだ選挙にいこう:2011/10/06(木) 19:59:58.21
2003で頼む
977名無しさん@そうだ選挙にいこう:2011/10/06(木) 20:57:13.52
.accdr .
accdr は、ランタイム モードでデータベースを開くことができるファイル拡張子です。
データベースのファイル名拡張子を .accdb から .accdr に変えるだけで、Access 2010 データベースの "ロック" バージョンを作成できます。
ファイル名拡張子を元の .accdb に戻すと、再びすべての機能を使用できるようになります。
978名無しさん@そうだ選挙にいこう:2011/10/06(木) 21:40:33.22
仕入先テーブル
ID
会社名
会社名 (フリガナ)

姓 (フリガナ)

名 (フリガナ)
電子メール
アドレス
部署会社
電話番号
自宅電話番号
携帯電話番号
FAX 番号
番地
市区町村
都道府県
郵便番号
国/地域
Web ページ
備考
添付ファイル
979名無しさん@そうだ選挙にいこう:2011/10/06(木) 22:00:18.21
あらら
980941:2011/10/06(木) 23:12:53.14
>>978
見れたのテーブル構造だけ?
テーブルのデータも見れた?
981名無しさん@そうだ選挙にいこう:2011/10/07(金) 04:41:33.26
次スレよろ
982名無しさん@そうだ選挙にいこう:2011/10/07(金) 09:19:56.72
>>974
>>975
>>978
検証有難うございました
983941:2011/10/07(金) 19:03:56.47
Access達人の皆様、検証願います

ユーザーにテーブルを見せない方法チョッチ修正
(pathの操作が良く解らないのでディレクトリ固定、C:\DAT\ に置いて起動してください)
http://up1m.ko.gs/src/koups864.zip

Q) テーブルに登録されている、金子由香里さんのメールアドレスは何でしょうか?

P.S.
次スレ立てておきます
984名無しさん@そうだ選挙にいこう:2011/10/07(金) 19:06:26.54
985名無しさん@そうだ選挙にいこう:2011/10/07(金) 20:10:58.32
>>984
おつ
986名無しさん@そうだ選挙にいこう:2011/10/08(土) 03:58:07.75
>>984
おつ
987名無しさん@そうだ選挙にいこう:2011/10/08(土) 09:16:17.90
>>983
mdbで頼む
988名無しさん@そうだ選挙にいこう:2011/10/08(土) 10:20:34.58
mdbだと出来ないんです。ペコリ
989名無しさん@そうだ選挙にいこう:2011/10/08(土) 11:03:00.94
>>983
ギブアップ
990名無しさん@そうだ選挙にいこう:2011/10/08(土) 12:36:22.88
リンクテーブルのConnectプロパティが ;C:\Dat\be.accdb てな感じな状態でしょ
リンクテーブルが存在しているのだから、テーブル定義は推測できるってことだな。一致するかどうかは別として。
BEのパスワードを変更したときと同じ状態にあるような気がしないでもない

リンクテーブルをレコードソースとするフォームを開いた状態の時、
要はBEにパスワード付で接続されている状態の時どうするんのって思うわ
991941:2011/10/08(土) 14:03:54.49
>>987
いまやったら作れませんでした

>>989
検証有難うございます

>>990
検証有難うございます
> 要はBEにパスワード付で接続されている状態の時
それが分割データベースの通常の運用だと思います
手間暇変わらずにNorthwindでも全く同じように動きます、共有でもOKです
突破したら、教えてくださいませ
992名無しさん@そうだ選挙にいこう:2011/10/08(土) 15:06:02.50
確かにフロント幾つでも開ける不思議。
993名無しさん@そうだ選挙にいこう:2011/10/08(土) 15:59:29.14
クエリーで八桁テキストを日付の書式設定でyyyy/mm/ddに変換するように、yyyy-mm-ddの形式に変換したいのですが、left関数やmid関数で組み立てる以外に有効な方法ありますでしょうか?
994名無しさん@そうだ選挙にいこう:2011/10/08(土) 16:00:37.44
これフロントエンドをランタイムモードで開いても何もできないんだよな
なんか、まったく意味がわからんのだが、、、、
995名無しさん@そうだ選挙にいこう:2011/10/08(土) 16:18:15.11
>>993
Formatでもつかえばいいじゃねぇの

うめ
996941:2011/10/08(土) 16:35:45.55
>>994
OpenCurrentDatabaseを使ってテーブルを隠すことは可能ですけど、
その方法ですと、どうしてもランタイムでは使えないので不便なんです

で、今回の方法はランタイムでもちゃんと動きますよって事のサンプルです
勿論、ランタイムでなくてもOKです
omanko() 内の実行条件を AllowBypassKey = False に変えます
997名無しさん@そうだ選挙にいこう:2011/10/08(土) 16:38:44.30
>>983
Dim Fname1 As String
Fname1 = CurrentProject.FullName & ".txt"

例えば"D:\test2\sample.mdb"内に上のVBAコードを記述した場合、
変数Fname1の内容は"D:\test2\sample.mdb.txt"になる。
(Access2000〜2007の場合)
これを応用すればpathの問題は解決できないかな?
998941:2011/10/08(土) 17:53:55.83
>>997
配布やったことないので、Connectプロパティ書き換える方法が解りませんでした
未熟です
999名無しさん@そうだ選挙にいこう:2011/10/08(土) 18:32:44.53
>>995
その書式設定方法が知りたいのです。
できればよろしくご指導ください。
1000名無しさん@そうだ選挙にいこう:2011/10/08(土) 18:40:22.14
>>999
式1:Format(フィールド名, "yyyy/mm/dd")

でいいと思うが、Verが2000で修正パッチを当てていないとバグる。
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。