★Microsoft Access★

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
Microsoft Access全般スレです
板違いとかいう香具師は
板違いです。
タイトル引き継げよ。
タイトルに飾りを入れるやつはクソ。
ビジネスsoft板向けかな?
データベース板。
削除依頼だしとけよ。

================終了===================
7デフォルトの名無しさん:03/10/06 12:14
Acces割りたいんだけど誰か共有してくれない?
nyで見つからなくてさ
8デフォルトの名無しさん:03/10/06 12:19
アクセスってよく聞くけど一体なんなの?
簡易データベース?
9デフォルトの名無しさん:03/10/06 12:24
信じるものは得をする〜♪
しんじら〜れないこの値段〜♪
ウォ〜〜〜ッチマン♪
自身満々ウォ〜〜〜〜ッチマン!
お〜い
アクセスでADO使うときファイル名は自分を指定するのかい
それとも違うオブジェクトで直接テーブル名つかえるのかい?
11デフォルトの名無しさん:03/10/06 12:36
>>10
はは〜ん、その質問が目的だったんだな
10=1
1210:03/10/06 13:21
いや、俺>>1ぢゃないんだけど……
13デフォルトの名無しさん:03/10/06 16:10
Access割らせて下さい
お願いします
冷蔵庫から卵を出してペンでAccessと書け。
個人で持ってる香具師なんてなかなかいないだろ
あんなソフト
16デフォルトの名無しさん:03/10/06 22:38
学校の授業でAccess使ってるんだけどわかんないから家で家庭学習したいんだけど持ってないから割らせて下さい
でないと単位が取れなくなってしまいます
おねがいします
教官に相談しろよ。
学校・学部・学科・学籍番号・氏名は?
先生に言えば割らせてくれるんでしょーか?
ってんなわけねーだろボケが
死ねよ
「家で家庭学習する」(この時点でバカってわかるね)に対する代替案を相談でき
る可能性はあると思いますが何か?
だいたいこういうどうしようもないコトを言い出す奴は既にそれ以前の過程で誤
りを犯している場合がほとんどだろ。
20:03/10/07 01:29
お前の改行のしかたの方がバカです
小学生に混じって勉強し直して下さい(推奨)
2110:03/10/07 12:44
なりすましか・・・・
>>10の回答きぼんぬ
22誰か教えて!:03/10/22 17:05
パススルークエリーを使用してインターネット経由で
PostgreSQLのDBに接続してるのだけど、
回線が切れたらアクセスを再起動しないと再接続されません。

これを回避する方法、どなたか知りませんか?
Access2003にて

CurrentDbのPropertiesに

Name:Themed Form Controls
Type:4
Value:1

を追加することによりVisualStyleに適応

以上報告終わり
24デフォルトの名無しさん:03/11/13 14:18
レポートで画面を開く直前に
「指定した式には値がありません。」
とエラーが発生してしまいます。

内容は、グループヘッダーを作成し
グループヘッダーには、CountAというテキストボックスを作成し
コントロールソースには、=Count(*) と入れます。
そしてイベントには、
Dim i As Integer
Dim j As Integer

Private Sub グループヘッダー0_Format(Cancel As Integer, FormatCount As Integer)

i = 1
j = Me!CountA

End Sub

と入れたのですが、j = Me!CountA でエラーが発生してしまいます。
エラーを防ぐ方法は無いでしょうか?
>>24
レポートが開かれる前にMe!CountAをどうやって
確認できるの?
26デフォルトの名無しさん:03/11/13 15:39
>>6
違う。
プロはmdbを使うとすればクライアント画面描画用のワークテーブルとしてしか使わない。
AccessはGUI開発環境として使うのであって、データベースはOracleやSQL server等、外に持つ。

>>10
ADOは外のデータベースに使う。mdbに対して使うと糞遅いので、DAOを使う。
27デフォルトの名無しさん:03/11/13 15:49
>>26
プロはお金がとれないとこまるので、ACCESS だけだと簡単そうに見えるので
無理にでも、Oracle や SQL Server を使う!
ACCESS じゃ心配だぁとか言って(笑)

ACCESS2 の頃から、いろいろ文句言っている人が多いなか;
10万レコードと20万レコードのテーブルでの処理を未だにやっているが
問題は起きていません。
世の中そんなに大きなデータばっかりなのかなぁ?
不思議です。

ACCESS でレポート、フォームを作ると楽なのは確かです!DB部分だけ他にするのも
納得です(手間は大して変わりませんから! あくまで素人をだまして金を取りやすくするためにね!)

ACCESS2 で十分だったのに、今のだったら全然問題なし!
もちろん VBA でいっぱいかきますけどね!
28デフォルトの名無しさん:03/11/13 15:55
>>27
ストアドがないじゃん。
帳票出すのに1分かかかっても気にしないならMDBでいいかも。
俺はいらいらする。
Oracleは…確かに存在価値分からん。意味があるのは超大企業だけだと思う。
29デフォルトの名無しさん:03/11/13 16:03
>>27
いっとくけど、プロはお金取るためにDBサーバ使うわけじゃないよ。
仕入れた製品は全然儲けにならない。MSDEならタダだし。
複雑な要件を定義して、設計して、作ることでお金もらってる。
何で作るかはあまり見積もりと関係ない。
30デフォルトの名無しさん:03/11/13 16:17
>>25
レポートに罫線を引くプログラムから持ってきたもので
他のレポートでは上手くいっています。
新たにレポートをコピーして使用したのですが
エラーで落ちてしまいます。
31デフォルトの名無しさん:03/11/13 16:23
>>30
i = 1
Debug.Print Nz(Me!CountA, 0)
' j = Me!CountA

こうやって原因究明するとか。
32デフォルトの名無しさん:03/11/13 16:47
>>31

Sleep(5000) をレポートを作る前段階(PGでデータを作った直後)で使ったら上手く行きました。
33デフォルトの名無しさん:03/11/13 17:03
更新するマクロってどうすんの?
>>32
処理の順序を成立させるために待たせるのは頂けませんな。
顧客の使用状況によってはそれでも間に合わなくなる場合があるし、
それに合わせると軽い場合にも不用に待たせるし。
ワークテーブルは、呼出し側フォームのイベントで作ってますか?
レポート内のOpenイベントで作ったり、ADPでもないのにADO使ったりすると間に合いませんよ。
35デフォルトの名無しさん:03/11/24 14:23
こんにちわ!
会社でアクセスを使って仕事をすることになりました(ーー;;)
でも私のまわりには使いこなしている人がいません
難しそうな仕事を押し付けられそうでおびえています
本を買って勉強しようと思っているのですが、どれを
買えばいいのかさっぱりです
ヤフオクで安く手にいれたいと品定め中ですが、正直
当たり外れとか全然わかりません。
何を買えば私は救われますか?
>>35
>>会社でアクセスを使って仕事をすることになりました(ーー;;)
A.Accessを(道具として)使って、目的がはっきりとした事をする仕事なら
→がんばれ!

B.なんだか分からないけど、Accessって便利そうだからオマエが使えるようになれって仕事なら
→ことわれ!

回りに使える人がいないなら、キミがいくら頑張ってもその価値を認められる事はない。
Accessを使える技術をつけても面倒を押し付けられるだけで、頑張ればがんばるほど
無理難題を言いつけられる。プロに頼んだら5千万っていわれたけどカネがないから
オマエがサービス残業してタダで作れとか言われるようになる。
プログラミングのプロでもいれば苦労は認めて貰えるだろうが、そういう人なら
Access如き使えない訳がないのでいないだろうね。

>>本を買って勉強しようと思っているのですが、どれを
>>買えばいいのかさっぱりです
まず立ち読みでもしてみれ。さっぱりな本は買っても役に立ちません。
さらに、さっぱりな本がさっぱりなのはアナタの所為とは限りません。
本の著者もAccessの事はさっぱりだけど、マニュアルを孫引きして
入門書をでっち上げているかもしれないのです。

>>何を買えば私は救われますか?
1.どんな事を実現したいか、まずはっきりさせる。
2.使い方はヘルプと付属のサンプルを見て研究。
3.だめならマイクロソフトのMSDNページあたりを検索。
4.あとは、このあたりとか。http://www.moug.net/

まさか、Accessは持ってないけど本で覚えたいとか思っているならそれは無理。
37デフォルトの名無しさん:03/12/04 14:46
Access上のローカルテーブルをプロシジャ内にて
OpenRecordsetで開きEofまで1レコードづつ参照−更新を繰返し処理をしています。
現在ローカルテーブル内の実レコードは70,000件あります。
この処理を実行すると時折「共有ロック数の制限を越えています」
旨でエラー中断してしまいます。
OSはWIN2000。CPUはPentiumV1GHz、MEMは256MBの環境です。
レジストリ内のJetに関するMaxLocksPerFile値(デフォルト9500)も
上げてみたりしていますが現象が解決されません。
この制限を解くには、又、制限に引っかからないよう処理を行う為には
どのような手段があるでしょうか?
更新クエリを使う
39デフォルトの名無しさん:03/12/04 22:02
「レコードロックをしない」でやればいいんじゃないの?
それと、なんで更新クエリーを使わないの?(複雑な処理が必要なのかな・・・
40デフォルトの名無しさん:04/01/20 18:34
レポートについて質問です
まったく同じデータのレコードが3件あって
これを3枚のレポートに出力したい場合どうすればいいんですか?

それとも連番かなんかでグループ化できる項目がないとダメ??
3回印刷する
>40
どんな考えでどんな事をやって何が問題なのか整理しる。
そういう聞き方をしているうちはj>41な答えしか返ってこないぞ。
43デフォルトの名無しさん:04/01/29 12:00
レポートプレビュー画面より印刷するときに部単位で印刷をしたくないんですが
どのようにプログラム書けば大丈夫ですか?
部単位でした印刷できないためかなり印刷に時間かかってるので大変なんです
よろしくお願いいたします

44デフォルトの名無しさん:04/03/02 12:52
http://support.microsoft.com/default.aspx?scid=/directory/worldwide/ja/kblight/T005/2/20.asp
の操作に近い操作を行いたいのですが、微妙に違うので困っています。

やりたいことは、
コンボボックスを2列にして出したいのです。
つまり、最終的に文字列を、"";(全て);1;1;2;2;...;"Other";"その他";
というようなものにする関数を作りたいのです。

現在はのコードは、以下の通りです。、

Public Function CreateStrLst(ByVal Field As String, ByVal Table As String) As String
Dim rs As New ADODB.Recordset

CreateStrLst = "(全て);"
rs.CursorLocation = adUseClient
rs.Open "SELECT " & Field & " FROM " & Table, _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.\mdb.mdb;", _
adOpenForwardOnly, adLockReadOnly
CreateStrLst = CreateStrLst + rs.GetString(adClipString, , , ";")
rs.Close
Set rs = Nothing
End Function

GetStringのところを少しいじればいいと思うのですが、
どのようなフィールドがあるかわからない場合にもうまく動くものが作れません。
宜しくお願いします。
4544:04/03/02 14:44
板違いだったようなので、ビジネスソフト板で聞いてみます。
お目汚し失礼しました。
46デフォルトの名無しさん:04/03/03 15:40
作成したmdbファイルを開いた時に
ユーザ名、パスワードの入力を要求するようにする
設定方法を教えて下さい。
パスワードの方はできたのですが、ユーザー名の方が分かりません。

パスワードの設定方法
mdbファイルを排他で開く、セキュリティでパスワードを設定

ユーザ名の設定????
47デフォルトの名無しさん:04/03/04 15:33
MS-ACCESSにオートナンバー型のテーブルがあるんだが
そのテーブルにInsert Intoで書き込みするさいには
オートナンバーの項目には何をしていしたらいいのですか?

insert into table values(オートナンバ,'test')

>>47
tableのあとに明示的にフィールドを指定しる。
ただしオートナンバーフィールドは指定しない。
例)
INSERT INTO テーブル1 ( 顧客名 )
VALUES ('ぬるぽ')

ただし、漏れがやってみたところ、次の構文でもオートナンバーの
項目に値が入ってしまうようだ(インデックスなどで重複を許可
しない場合は除く)
INSERT INTO テーブル1 ( オートナンバーフィールド名, 顧客名 )
VALUES (0, 'ぬるぽ')
49デフォルトの名無しさん:04/03/04 16:08
>>48
なるほど!
ありがd
50デフォルトの名無しさん:04/05/18 18:26
著作権法違反ほう助の疑いで逮捕されたWinny開発者の47氏の為にTシャツを作って応援しましょう。
まずは以下の投票所でこれを着て応援したいというデザインを投票してください。
締め切りは5/19日、皆さんの協力よろしくお願いします

投票所
http://f40.aaacafe.ne.jp/~nytshirt/
投票の前にここを読め
http://f40.aaacafe.ne.jp/~nytshirt/readme.html
まずは予選です。良識をもって投票しましょう。

------------------------------------------------------------------------------

51デフォルトの名無しさん:04/05/30 10:07
Visual Basic6.0 からmdbファイルを扱った常時稼動用のアプリケーション
開発を行っております。

しかし、問題がありましてmdbファイルに1日2万件のデータが追加され
ましてファイルサイズが増えていってしまいます。

そこで最適化の処理を検討しているのですが、常時接続、稼動している
ため難問題を抱えております。

常時接続中でも最適化処理が行えれば何とか出来そうな感じがするので
すがそのようなことは可能なのでしょうか?

現在、MDBの接続にはJet Engineをadoで行っておりますが最適化が可能
ならば方式は問わないとのことでした。

詳しい方おりましたらご教示お願いします。
52デフォルトの名無しさん:04/06/05 20:32
無理
>>52
無駄レスやめれ
54デフォルトの名無しさん:04/07/03 10:18
>>51 それは Jet を使うべき場面じゃないような気がする。

ところで、.NET Framework で MDB ファイルを新規作成
するにはどうすればいいかご存知の方おられませんか?

既存の MDB ファイルは ADO.NET から使えてウハウハ
なんですが。
Jet Engine
ジェットエンジンって、何か強烈な語感。
速そうだし離陸しそうだし燃料いっぱい喰いそうだし客いっぱい乗せられそうだし。
マイクロソフトデスクトップエンジンなんかよりずっと凄そう
57デフォルトの名無しさん:04/08/03 22:57
アクセスからバッチプログラムを起動すると
バッチ処理が長いため、次のマクロがひらいてしまいます。
バッチ処理が終了したら、次のマクロを実行するようにするにはどうしたら、
いいんでしょうか?
58デフォルトの名無しさん:04/08/03 23:37
>>51
MSSQL
59デフォルトの名無しさん:04/08/03 23:40
>>57
バッチを起動している部分のソース欠け
>>57
win32APIの GetExitCodeProcess() を使ってバッチの終了を待てばいいかもしれません。
61デフォルトの名無しさん:04/08/18 14:40
AccessのVBAソースコードはVSSで管理できるのでしょうか?
普通にVSSにMDBファイルを追加するとMDBファイル全体での管理となってしまい、モジュールごとの
ソースコード管理は実現できないようです。
ヘルプを探ってみましたが、それらしい記述が見つからず・・・
経験のある方いらっしゃいましたら教えてキボンヌ
>>61
VSSってファイル単位でソース管理するから、mdbバイナリの中に格納されてる
AccessのVBAは管理不可能だと思うYO
2000ならでべろっぱえでぃしょん買えばできる。
2002以降は知らん。
6461:04/08/19 21:40
そうなんですか。
確かに、今使ってるのはOfficeのPro版です。
現在はDevelopperEdition以前に、2000自体入手不可ですよね?
あきらめるしかないか・・・
65デフォルトの名無しさん:04/09/09 00:19
ACCESS で MDBファイル ダブルクリックして 実行でもなく
編集(プログラム表示)でもなく デバッグモードで 実行するには
どーしたら いいんですか? 編集実行はシフト押しながらだとおもったのですが
当方 パソコン暦3ヶ月 です
66デフォルトの名無しさん:04/09/11 12:09:10
>>65
デバッグモードってどんなモードのことですか
67デフォルトの名無しさん:04/09/14 23:33:40
すいません。質問です。
Accessのシステムを開発しているのですが、DBはSQLServerを使用しています。
最近、テーブルにタイムスタンプ型を追加したのですが、そのテーブルと全く同じフィールド名、
フィールドサイズ、型を持つテーブルをAccess側にも持つ必要があります。
タイムスタンプ型と同じ型がAccessに存在しないので非常に困っています・・・
何か対処法はありますでしょうか?緊急なので、知っている方がいましたら教えて下さい。
68デフォルトの名無しさん:04/09/20 02:46:47
>>65
教えてあげましょう。今日寝つけないので・・・。
それはSHIFT押しながらMDBファイルダブルクリックして、
おそらくマクロのAUTOEXCECファイルを開いて、ブレークポイントを設定して
F8キーを押しゃあ良いんだよ。

69デフォルトの名無しさん:04/09/20 02:48:18
>>67
んなもん、テーブルインポートすりゃ良いんだよ。
はあ寝れるかな。
70デフォルトの名無しさん:04/09/20 02:52:31
>>57
もし君がマクロしか扱えんという人ならその対応は無理と思うが、
マクロなんて全部VBAに変換して使った方が良いと思う。
VBAでそのバッチ処理が終わったら、次のマクロを実行って記述すれば
問題なし。
71デフォルトの名無しさん:04/09/20 03:01:06
>>64
DevelopperEditionの2000版なんてネットで探せばあるよ。
72デフォルトの名無しさん:04/09/20 03:04:18
>>51
MDBファイルにデータが1日に2万件も追加されるシステムで
日次バッチ処理は無いのかい?
普通はそこで行うけど・・・
73デフォルトの名無しさん:04/09/20 03:14:04
>>46
セキュリティでユーザー・グループの設定で
ユーザー作って
カレントデータベースへのアクセスをそのユーザーからのみ
許可ってすればOKと思う。
74デフォルトの名無しさん:04/09/20 03:18:57
>>43
印刷ダイアログでページ指定(何ページから何ページ)で済む話では?
75デフォルトの名無しさん:04/09/20 03:25:44
>>40
単票形式でグループ化しなきゃ良い。
76デフォルトの名無しさん:04/09/20 03:38:02
>>37
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 4.0
のDWORD値を10進に変更
でだめなら、
複雑な処理を関数化できるなら、更新クエリに変更かな〜。


77デフォルトの名無しさん:04/10/02 15:24:56
AccessからF*TRANというツールを使いたいのですが、
マニュアルを見ても使い方がいまいちよくわかりません。

ご存知の方がいらっしゃいましたら、是非教えてください。
78デフォルトの名無しさん:04/10/02 20:02:42
F*TRANとはまた随分懐しいものを、と思ったが富士通はまだ売ってんのね。
webにはテクサポやってると書いてあるから、電話してみれば?
79デフォルトの名無しさん:04/10/02 20:21:43
>>77
F*TRANですかー、ご愁傷様です。
80 ◆FIcNi4f8js :04/10/03 03:33:35
クエリー実行中のプログレスバーってどうやったら表示出来ますか?
81デフォルトの名無しさん:04/10/03 23:05:21
はい。無理です。
ACCESSのクエリなら、画面左下のステータスバーにしか表示できません。
82デフォルトの名無しさん:04/10/03 23:10:43
ACCESS のソースが入手できれば可能では?
83デフォルトの名無しさん:04/10/03 23:14:58
>>80
普通にプログレスバーコントロール使えよ。何か問題でもあるのか?
84 ◆FIcNi4f8js :04/10/04 15:39:08
>>83
私はどうやったら出来るか聞きたかったので・・・
そうですかそれで出来るんですね。ありがとう。
85デフォルトの名無しさん:04/10/15 13:47:46
AccessからODBCでMySQLにアクセスするとDSN情報をMDB内部に平文でキャッシュするとかいう糞仕様はみんな了解済みなの?
86デフォルトの名無しさん:04/10/15 15:46:26
はい。
87デフォルトの名無しさん:04/10/15 19:20:53
パスワードも平文だっつうのに、、、強いな
88デフォルトの名無しさん:04/10/16 02:33:24
MDBさえ漏らさなければ無問題。
89デフォルトの名無しさん:04/10/16 22:33:38
よくいるんだよな。無駄な心配して余計なコストかける奴が・・・。
実際、それが問題になることなんてあるの?
90デフォルトの名無しさん:04/10/17 10:16:51
こんな意識の低いやつがまだいるのかよ。
91デフォルトの名無しさん:04/10/19 02:21:02
>>90
つーかそれはMySQLの方の問題と思うが・・・。
ちゃんとしたODBCのドライバ作るのは、MySQLの方の仕事だろ。
君の意識の方が低いと思うよ。
商用なら、普通SQLサーバーだろ。
92デフォルトの名無しさん:04/10/19 22:40:11
実際にはMySQLだけじゃないみたいだよ
ttp://www.gulf.or.jp/~too/security/20020925office_odbc.html
おれが確認したのはMyODBCだけだけど
93デフォルトの名無しさん:04/10/20 00:33:06
それってAccessからのリンクで本番業務回してるって事?
94デフォルトの名無しさん:04/11/13 09:17:50
少し質問したいのですが、
SELECT TM_カード.カード名, Sum(TT_取引.数量*TT_取引.単価) AS 使用額, (TM_カード.カード限度額-Sum(TT_取引.数量*TT_取引.単価)) AS 利用残高
FROM TM_カード INNER JOIN TT_取引 ON TM_カード.カードコード = TT_取引.カードコード
GROUP BY TM_カード.カード名, TT_取引.カードコード;
でSQLを作ると
使用額, (TM_カード.カード限度額-Sum(TT_取引.数量*TT_取引.単価)) AS 利用残高
ここのところで「集計関数の一部として指定された式'TMカード,カード限度額-Sum((TT_取引,数量*TT_取引,単価)'を含んでいないクエリを実行しようとしました。
というエラーが出るのですが、このエラーがとれません。。。
どなたかご教授下さいませんか?
お願いします
95デフォルトの名無しさん:04/12/29 20:39:02
質問です
C++Builder5でADO利用しています

複数の関連されていないmdbファイルにデータを登録する時
常に1つのmdbに対して操作するのと
マルチスレッドで複数のファイルを操作するのと
どっちがお奨めなのでしょうか?

単純なテストとして
4つの全く関連していないmdbファイルに
それぞれ10000件insertをかけるスレッドを立ち上げ
登録状況を見てみました(登録件数をエディットボックスに表示)

100件程度までは4つ同時に登録してるようなスピードなのですが
その後は、なんというかスレッド切換が目に見えるような感じなのです
これは件数が増えるたびに遅くなってゆくAccessの遅さなんでしょうか?
それとも、俺のソースがタコなんでしょうか?

CoInitializeをスレッド毎に立ち上げなければならない
という本当か嘘かわからない情報もありまして
かなり困っております

適切なgoogle用キーワードだけでもいいので
どなたかご教示ください
96デフォルトの名無しさん:05/01/10 14:05:17
はじめまして。フォームにリストボックスを貼り付けて、そのリストにはCドライ
ブの書類というフォルダ内にあるエクセルのファイルのみを表示するようにした
のですが、方法がわかりません。ご存知の方がいたら教えてください。
作ろうとしている動きはリストボックスから選択すると、そのエクセルファイル
が起動するというものです。
よろしくお願いします。
97デフォルトの名無しさん:05/01/13 19:17:11
>>96
VBAを使う気があるなら、この辺を読めば出来る。
http://www.microsoft.com/japan/msdn/columns/office/office09072000.asp
98デフォルトの名無しさん:05/01/21 11:31:04
OracleのデータディクショナリってACCESSでは何に対応しますか?
99デフォルトの名無しさん:05/01/23 00:22:42
>>98
ない
100RAID小僧:05/02/01 18:35:55
********************************
サーバーOS環境 : Windows 2000 Server
データベース環境 :  SQL Server 2000
********************************
クライアントOS環境 : Windows2000
クライアントIF環境 : Access2002(XP) で作成したADPファイル
********************************

上記で何の問題なく稼動していたAccess2002 と SQLServer2000 でのC/Sシステムがあります。
ところが、クライアントのOSを WindowsXP に変更し、システムを起動し、数分ほっておくとSQLServer と Access2002 との間の接続が切れてしまう症状に困っています。
再度、ログオンか再起動をしないと再接続しません。
どなたか、解決方法をご存知ありませんか?

何卒よろしくお願い致します。
101デフォルトの名無しさん:05/02/07 17:51:43
あげ
102デフォルトの名無しさん:05/02/21 21:16:19
教えて下さい。
アクセス2003で開発者1名、使用者多数って環境で、
誰か1人でも使用されていると開発者はフォーム等の変更が出来ません。
使用者には更新権限は与えていません。
いつでも裏で開発者が開発出来る環境にしたいのですがご存知の方教えて下さい。
以前は97を使用しており、その時は平気で裏でバンバン変更出来ていました。
103デフォルトの名無しさん:05/02/21 21:29:08
真冬の恐怖
104デフォルトの名無しさん:05/02/22 09:48:49
すげぇ・・・
105デフォルトの名無しさん:05/02/22 23:35:57
Access2000のランタイム版を削除して
office2000をインストールしましたが
Word、Excelは正常に立ち上がるのですが
Accessだけロゴが出てすぐに終了してしまいます。

修復方法をお分かりになる方がいましたら教えてください。
106デフォルトの名無しさん:05/02/23 18:58:31
Office2000はProfessional版?
107105:05/02/24 21:36:20
>>106
Office2000はProfessional版です。
ランタイム版と書きましたが調べてみると
インストーラーにInstall Sieldが試用されていました。
インストーラーからインストールすればAccessが
セットアップされていなくても動くのですが
これってランタイム版なんでしょうか。
108デフォルトの名無しさん:05/02/25 00:56:42
ランタイム版

ランタイム版が動かないのはランタイムがないから
ランタイムを入れればランタイム版は動きます
109デフォルトの名無しさん:05/02/26 00:26:56
>>108
以前試用していたPC(NT4.0)はAccessをいれずインストールして
動いていたそうです。
このアプリのマニュアルにもAccess未インストールでも動作可能
と書いてありました。

CDにはランタイムライブラリのようなものは入っていました。
windowsインストーラーでないのでofficeのDevelopper版で
作成したランタイムではないようですが・・・。

状況としては親会社の方針で
OS:NT4.0 WorkStation → XP Pro
office:2000 → XP
への移行を行なっていたのですが
Office XPではこのAccessアプリのレポートが正常に動作せず
office XPを削除し、office 2000のインストール時に
CDが傷ついていたため読み込めずインストール失敗、
このアプリのインストーラ実行、
>105の現象、MSのHPよりOfficeの削除ツールをダウン、実行し、
再度傷のついていないCDよりoffice2000のインストール
>105と同じ状況という状況です。
110デフォルトの名無しさん:05/02/28 18:41:51
状況は良く分かったという状況です。
111デフォルトの名無しさん:05/03/08 15:46:36
何方かお願いします。

フォームにa,bの入力できる項目があります。
aには適当に数字を入力します。
bにはa<1000の時は0、a>=1000の時 a*0.25(小数第一四捨五入)

これの作り方を教えてください。
どこの項目に書けばいいのかもわからないレベルです。
112デフォルトの名無しさん:05/03/09 02:53:59
a の上で右クリックして「変更時」からコード作成
a_After_Update みたいな関数定義が作られるから
そこに
b = iif(a < 1000, 0, a * 0.25)
と書く
113111:05/03/09 16:12:36
>112
やっと理解できました。
本当にありがとうございました。
114デフォルトの名無しさん:05/03/09 22:18:58
access2000 or access2002のRaiseEventって、非同期じゃないですよね?
115デフォルトの名無しさん:05/03/10 19:04:53
私が一年前に作ったAccessのシステムを今まで他の人がメンテしていたのですが、
その最新の*.mdbでは何故かブレークポイントが効かないのです。どうしてなので
しょうか。
116115:05/03/10 19:15:26
自己解決しました。

何故だか分かりませんがSHIFTを押しながら起動すると有効になりました。

昔は押さないで起動しても有効になっていたんですが…。
117デフォルトの名無しさん:05/03/10 21:20:36
Shiftって事は起動時に自動実行プロセスを動かさないって事だね。
自動実行マクロ/メソッドでなにか妙なことをしてる予感。
118デフォルトの名無しさん:05/03/15 05:57:39
visual source safeでaccessのmdbを管理している人っている?
使い勝手とかどうよ?
119デフォルトの名無しさん:05/03/19 05:45:02
漠然としたことですが、教えてください。

フォームに、タブコントロールを1つ作成し
そこにサブフォーム10ぺーじを入れて作っているのですが、

オープンは、サブフォーム10つを単純にいれているときと比べ
遅くなるものなのでしょうか?
同じですか?

この際、操作性は、除外視して。。。。
120デフォルトの名無しさん:05/03/19 05:52:35
>102
アプリ.mdb+DB.mdbにする。

アプリとDBは、本番用と開発用を用意。
それぞれにリンク
開発用で、修正したら
開発アプリを本番用へ更新。
アプリのリンク先を本番DBに変更する。
121デフォルトの名無しさん:05/03/19 12:44:42
>119
とっても遅くなる。
122デフォルトの名無しさん:05/03/20 05:39:53
>121
それは、タブ入り>タブなし
ってことですか?
123デフォルトの名無しさん:05/03/20 10:25:47
いや、
サブフォーム10個 > サブフォーム1個
ってことだと思う
124デフォルトの名無しさん:05/03/20 20:53:21
タブ入り>タブなしなのか、
タブ入り=タブなしか
教えてほしいのですが。。
125デフォルトの名無しさん:05/03/20 21:06:07
>>124
「タブなし」ってどんなカンジ?
10個分ズラーっと並べてスクロールさせるの?
126デフォルトの名無しさん:05/03/21 03:26:47
>125
まあ、縦に並べてスクロールさせていくつもりです。
(重いといわれれば、やり方はいろいろ変えてみますが。)

というよりも、
タブって初期に見えているものが、1つですよね。
これって、仮想的なものなのか?

フォーム開いたら、10個みえているのと、
タブであたかもひとつしか見えていないのとでは、
開く時間に差が生まれるのか?

が、漠然と知りたかったんです。
127デフォルトの名無しさん:2005/03/21(月) 03:50:09
自分で作って試してみるしかないんじゃないの?
そういうの作ったことがある人はかなり少ないと思う。
あなたの為だけに新しく作って試そうとする人も少ないと思う。
128デフォルトの名無しさん:2005/03/27(日) 18:53:20
コマンドボタンを押すとフォームが2つ出てきます。
一つ目は日付を入力、二つ目はデータを入力します。
日付を入力すると二つ目のデータ入力する時に日付は入力された状態。
何回も日付を入力しなくて済む方法です。
この方法おしえてくれませんか。
129デフォルトの名無しさん:2005/03/27(日) 23:44:58
VBAの事でしょ?
130デフォルトの名無しさん:2005/04/05(火) 00:00:17
アクセス3日目のクソなヤシです。
すいません、アクセス2003使用してます。
CSV形式のファイルをインポートするとき
”あああ”,"123",""
の「”」を削除してインポートする方法を
おしえてください。みなさんのお知恵をかしてください。

131デフォルトの名無しさん:2005/04/05(火) 17:53:54
釣り?

なんにせよ テキストエディタで変換してからインポートする
132デフォルトの名無しさん:2005/04/05(火) 21:48:38
>127
釣りかもしれませんが、、、。

やってくれ!っていってるのじゃないのです。
試してみましたが、よくわからなかったので、
こういう状況になった方がいたら、とか
メモリ関係に詳しい方がいらっしゃったら、ということです。


133デフォルトの名無しさん:2005/04/06(水) 06:31:00
ウィザードでインポートしてたら途中で「"」で囲まれてるかそうじゃないか選ぶところあるだろ?
134デフォルトの名無しさん:2005/04/21(木) 16:43:51
質問です。
VB6.0からDAO3.6を使ってAccess2003のMDBファイルを開く際、
MDBファイルにパスワードが掛かっているのですが、
どうやって開けば良いのでしょうか?
検索して色々試したのですが、

実行時エラー '3031':
パスワードが正しくありません。

のままです。
よろしくお願いします。

↓ 現在このような状態です。

Private Sub Command1_Click()
  Dim db As DAO.Database
  Dim ws As DAO.Workspace

  Set db = Workspaces(0).OpenDatabase("D:\hoge.mdb", , False, _
    "Provider=Microsoft.Jet.OLEDB.4.0; " & _
    "Data Source=D:\hoge.mdb; " & _
    "Database Password=hogehoge;")

  db.close
End Sub
135デフォルトの名無しさん:2005/04/21(木) 19:37:46
.OpenDatabase("D:\hoge.mdb", , False, _
"MS Access;PWD=hogehoge")
136デフォルトの名無しさん:2005/04/23(土) 15:57:00
今入力フォームをつくっていて
「次のデータを入力」と「前のデータに戻る」というボタンをつくってみました。
で、次のレコードを読むようなマクロをつくったのですが、
最終レコードの入力をしているときは、次のデータにとべなくてエラーになるので
その場合はメッセージボックスを出しておわるようにしたいです。
VBAだとどういうふうに条件をかけばいいか教えてください。
お願いします

137デフォルトの名無しさん:2005/04/25(月) 16:45:00
MS-ACCESSで日付/時刻型の項目の登録の仕方がわかりません。

insert into table values( XXXX )

たとえば 2005/04/25 を登録したい場合 XXXX には何がはいるのでしょうか?
あと変数名が AAA の場合、XXXX には何がはいるのでしょうか?

138デフォルトの名無しさん:2005/04/25(月) 17:51:21
>>136
丸無げだな。もうちょっと考えろ
もまいのアプリの作り方にもよるから、一概にこうしろとは言えない

>>137
insert into table values (#04/25/2005#)

"insert into table values (#" & Format(AAA,"mm/dd/yyyy") & "#)"
139137:2005/04/25(月) 19:15:44
>>138
サンクスです。マジで助かりました!
140デフォルトの名無しさん:2005/06/14(火) 13:07:02
Accessの関数で教えて欲しいんですが、フィールドの
属性をハイパーリンクにして、そのフィールドの文字列
を名前に持つファイルにリンクを貼り付けるような
関数があれば教えて頂きたいのですが。
宜しくお願い致します。
141デフォルトの名無しさん:2005/06/14(火) 14:36:58
>140
そんな関数聞いたことない
素直にShellかShellExecuteでうごかしとけ
142デフォルトの名無しさん:2005/06/15(水) 04:54:06
>141
有難うございます。
Shellでファイルを扱うのはわかりましたが
リンククリック時にそのイベントを拾うのは
何という関数でしょうか?
何分Accessで作るのが初めてなもので
宜しくお願い致します。
143デフォルトの名無しさん:2005/06/15(水) 09:40:18
知ってるがお前には教えない
144デフォルトの名無しさん:2005/06/17(金) 15:10:07
まるで作ってくれと言わんばかりの質問ばかりだな
145初心者ポチ:2005/06/21(火) 21:22:46
VB6の初心者です。
データベースパスワードが設定してあるAccessのMDBファイルをVB6のコマンドボタンから
起動したいのですが、コーディングが解りません。
shellコマンドとかでは、パスワードが渡せないみたいだし、DAO記述したら
コンパイルで蹴られるし。途方に暮れてます、どなたかお助け下さい。


146デフォルトの名無しさん:2005/06/22(水) 11:21:47
>>145
DAOの接続文字列に pwd=パスワード を加える。
147初心者ポチ:2005/06/22(水) 13:36:01
データベースパスワードが設定してあるAccessのMDBファイルをVB6のコマンドボタンから
起動したいのですが、コーディングが解りません。
とりあえず次のように書いて見ましたがうまくいきません

Private Sub Command2_Click()

Dim db As DAO.Database
Dim ws As DAO.Workspace

Set db = Workspaces(0).OpenDatabase("c:\test.mdb", , False, _
"PWD=7644")

db.Close

Unload Me
End

End Sub

これを実行すると
実行時エラー '3343'
データベースの形式 C:¥TEST.MDBを認識できません
というエラーメッセージが出てTEST.MDBが立ち上がりません
何が悪いのかわかりません、どなたか教えてください
148デフォルトの名無しさん:2005/06/22(水) 14:30:24
>>147
「OpenDatabase」メソッドをMSDNで調べていないんだろうな...

×Set db = Workspaces(0).OpenDatabase("c:\test.mdb", , False, "PWD=7644")

○Set db = Workspaces(0).OpenDatabase("c:\test.mdb", False, dbDriverNoPrompt, ";PWD=7644")
or(Set db = DAO.OpenDatabase("c:\test.mdb", False, dbDriverNoPrompt, ";PWD=7644"))

こんなふうにしてみ


だが、これが気に食わない
>データベースの形式 C:¥TEST.MDBを認識できません
そのMDBは単体で起動するのか?
149デフォルトの名無しさん:2005/06/23(木) 18:13:57
アクセスランタイム(もしくはアクセス)がインストールされているか
を調べる方法をご存知の方、お知恵をお貸しください。

レジストリのここを見ればわかる!とか・・・

よろしくお願いします
150デフォルトの名無しさん:2005/06/23(木) 22:05:41
コンパネで
プログラムの変更と削除みればわかるんじゃないの
151デフォルトの名無しさん:2005/06/24(金) 08:40:28
>>149が聞きたいのはプログラム上でってことじゃないかな?
いちおープログラム板だし

まぁ、俺はやり方わからんけどな
152デフォルトの名無しさん:2005/06/24(金) 09:23:54
Access2000で

1.ランタイムインストール環境 MDE →×
2.ランタイムインストール環境 MDB →○
3.Access本体インストール環境 MDE →○
4.Access本体インストール環境 MDB →○

1.の環境で、フォームに貼ったボタンをクリックするとエラーになるんだが

なんで?
153初心者ポチ:2005/06/24(金) 11:27:30
Access の opendatabaseでデータベースの形式 C:¥TEST.MDBを認識できません
というエラーが出て、オープンできません。
参照設定とか、何か基本的なことが抜けているんでしょうか。
もちろんMDBファイルは単体で動きますし、直接なら起動できます。
よろしくお願いします。

154デフォルトの名無しさん:2005/06/24(金) 13:40:35
>>153
JETCOMP.exe使ってみたら?
155デフォルトの名無しさん:2005/06/24(金) 21:57:47
>>149
プログラム上でなら、オフィスのインストール先を見るとか。
C:\Program files\Microsoft Office\OFFICE11\MSACCESS.EXE
↑はOffice2003でインストール先デフォだけど。
レジストリなら
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OFFICE\11.0\Access\InstallRoot
にパスが通っていればインストールされてるんじゃないのかな。
まぁこれならランタイム版かどうかは判断できんが。
156デフォルトの名無しさん:2005/07/14(木) 19:18:50
質問です。

メニューバーの「ツールバー」の「ユーザー設定」で
独自のツールバーを作り、現在のフォームから別のフォーム
遷移できるようにするものを作りました。

その際に、次に開くフォームに引数(前の画面の情報)を渡して
その引数によって次に開いたフォームの動作を変えるようにしたいのですが
そういう設定はできるのでしょうか?
どこで設定すればいいのでしょうか?
157156:2005/07/15(金) 13:08:23
ageておきます
158デフォルトの名無しさん:2005/07/15(金) 13:42:10
フォームは1個しか開かないからグローバルな変数にするとか
開くフォームに変数を持たせるとか
開くフォームのコントロールに持たせるとか
いろいろ。
159デフォルトの名無しさん:2005/07/15(金) 13:53:36
質問です
Access97がWindowsXP上で正常に動作するか知っている人いませんか?
160156:2005/07/15(金) 14:20:51
>>158
レスどうもです。

普通にフォーム内のボタンを使って遷移するときは
そこのボタンのコードに変数でも置いて、それを使えばいいんですが、
ツールバーで遷移する場合には
どこにコードを書いて変数を設定すればいいんでしょうか?
161デフォルトの名無しさん:2005/07/15(金) 14:35:45
ツールバーからマクロを実行して
そこから
マクロから"module"内の関数よぶ
ことはできる。
162デフォルトの名無しさん:2005/07/15(金) 16:55:59
>>161
ダメでした。分かんないです。
コマンド>マクロデザイン>実行
の設定で色々やってみましたが、上手くいかないです。
163デフォルトの名無しさん:2005/07/15(金) 17:36:54
@適当なモジュールにユーザ関数「func1()」を作成し
適当なコードを入れる。

A新規マクロ「マクロ1」を作成し1行目の
アクションを「プロシジャ-の実行」とし
プロシジャ名 「func1()」と入力
(またはウィザードを使って作成)

Bツールバーのユーザ設定
「コマンド」タブ、分類(G)の「すべてのマクロ」の「マクロ1」
をツールバーにD&D
164162:2005/07/15(金) 19:05:57
>>163
どうもです。

早速やってみたのですが、

「このオブジェクトには、オートメーションオブジェクト'menu_kousin'は含まれません」
「オブジェクトのプロパティを設定するか、メソッドを実行するVBプロシージャを実行しようとしましたが
 これらのプロパティまたはメソッドが使用できません」

となってしまいました。
どう対策すればいいのでしょうか?
165デフォルトの名無しさん:2005/07/15(金) 19:43:33
なんかバージョン違うよう。

モジュールに関数ある
Public Function menu_koushin()
・・・
End Function

あとプロシジャ名のmenu_koushin()の括弧がないとか
166159:2005/07/19(火) 14:45:31
167デフォルトの名無しさん:2005/07/20(水) 18:13:50
質問です。

デザインビューでクエリを作っています。
テーブルAのID_a列の値を
連結されたテーブルBのID_b列中から探して、
さらにテーブルBのID_x列に「1」と入っている物だけを
抽出したいのですが、その手段が分かりません。
クエリ作成画面の下の方にある入力欄に

フィールド:ID_b
テーブル:テーブルB
抽出条件:"ID_x"="1"

と書いてみたのですが、何か間違っているようです。
どうすればいいか分かりますか?
168デフォルトの名無しさん:2005/07/21(木) 01:06:29
どなたか教えて下さい。

MDBを開いたとき、Accessのアプリケーションを必ず最大
にして開くようVBAで制御したいのですが、方法が分かりません。
よい方法をご教示ください。
宜しくお願いいたします。
169168:2005/07/21(木) 01:11:36
補足です。
Win32API関数のShowWindow関数で最大化を
指定しましたが、戻り値は正常となるものの最大化しないどこ
ろか、アプリがMDBを起動用に開いたエクスプローラの裏に
隠れてしまいます。
なお、Accessは2000、OSはXPです。
宜しくお願いいたします。
170168:2005/07/21(木) 01:22:02
すみません。
自己解決しました。
某ページに載っていたWin32API解説の引数の値が
間違ってたようでした。。。
171デフォルトの名無しさん:2005/08/31(水) 13:00:12
Module オブジェクトについてですが、ヘルプには

「Module オブジェクトへの参照を取得すると、そのモジュールのプロパティの設定や読み取りを行ったり、
そのモジュールのメソッドを使用することができます。」

とだけ書いてあって使用例が載っていません。例えば、

Call Modules(モジュール名).関数名

と言う風に書いてもエラーで実行されないのですが、どう書いたらモジュール内の関数を実行できるのでしょうか。

172デフォルトの名無しさん:2005/09/27(火) 01:12:09
なんで明記したいんだ
関数名だけで呼べよ
173デフォルトの名無しさん:2005/10/24(月) 11:28:26
TextBoxの入力形式を全ての半角文字に限定したい場合にはどうしたらいいので
しょうか?
174デフォルトの名無しさん:2005/10/24(月) 19:51:22
入力された文字列の文字コード一個一個調べて半角じゃないのがあったらどうにかする
175デフォルトの名無しさん:2005/10/24(月) 19:59:46
>>173
一ヶ月近く放置されているスレによく質問する気になったな。感心した。
176デフォルトの名無しさん:2005/10/25(火) 07:17:02
奥が深いよなaccessは
177デフォルトの名無しさん:2005/10/25(火) 11:08:26
>>174
やっぱり設定では無理なんですね。その部分は設定で何とかしたかった。
178デフォルトの名無しさん:2005/10/25(火) 11:57:35
プログラム板だからやっぱVBAで処理しないとな。
入力モードのプロパティを半角カタカナに設定するのは板違いになっちゃうからダメだよな、うんうん。
179デフォルトの名無しさん:2005/10/27(木) 13:34:55
質問させていただきます。
AテーブルのIDという項目が、オートナンバーで、Bテーブルにリンクを張っているんですが、
SQLserverへ、アップサイジングすると、Bテーブルのデータがまったく作成されません。
どうしたらよろしいですか??
180179:2005/10/27(木) 14:50:06
補足です。
Aテーブルと、Bテーブルは、1対多の関係で、Aテーブルを開くと左側に、+印があり
それを、開くとそのレコードと繋がっているBテーブルのレコードがのぞける状態です。

説明下手で、申し訳ありません。
181デフォルトの名無しさん:2005/10/28(金) 01:40:44
accessってネットワーク共有できますか?
182デフォルトの名無しさん:2005/10/28(金) 11:08:56
ビジネスsoft板かデータベース板で聞けばいいのに……
183デフォルトの名無しさん:2005/11/01(火) 18:33:42
>>181 mdbを共有するのは地獄への入り口
184デフォルトの名無しさん:2005/11/01(火) 18:41:38
ほんっとに簡単にデータ壊れるよな。おじさんびっくりした。
185デフォルトの名無しさん:2005/11/02(水) 12:44:42
サブフォーム(連結フォーム)の連結を一時的に切って、非表示可したりできますか?
その部分だけ外部DB+クエリが重いので、メインフォームしか使わないときは非連結にしておきたいです。
186デフォルトの名無しさん:2005/11/02(水) 13:43:58
ヘルプ見れ

SubFormオブジェクト
SourceObjectプロパティ
187デフォルトの名無しさん:2005/11/03(木) 20:13:38
>>186
サンクス!
ついでにSourceObjectプロパティを設定しなおした場合のデータのRefresh方法も教えてください
188デフォルトの名無しさん:2005/11/03(木) 20:20:07
obj.requery
189デフォルトの名無しさん:2005/11/03(木) 20:30:37
>>188
ありがとう
サブフォームのほうでレコード移動時に発生するイベントがあるんだけど
そいつって元のフォームから走らせることできる?
190デフォルトの名無しさん:2005/11/03(木) 20:48:31
やってみてから聞けよ
191デフォルトの名無しさん:2005/11/03(木) 20:55:50
>>190
できなかったから聞いてるんだけど・・・
192デフォルトの名無しさん:2005/11/03(木) 20:57:34
発生すらしなかった?
193デフォルトの名無しさん:2005/11/03(木) 21:14:19
>>192
うん、ページロードは発生したけどページカレントは無理だった
ロード時だと、コントロールの中にあるデータ使えないから駄目なんだよね。。。
194デフォルトの名無しさん:2005/11/03(木) 21:19:07
サブフォームでも普通にレコード移動時イベント発生するはずなんだが。
多分、コード書く場所間違っているかコントロールの参照指定がおかしいんだろうな。

Private Sub Form_Current()
MsgBox ""
End Sub

↑だけ書いて何も起きないんだったら後は知らん。
195デフォルトの名無しさん:2005/11/03(木) 21:25:04
>>194
ごめんなさい・・・他のコードが邪魔してました
イベントとれて解決しました

ありがとうありがとう
196デフォルトの名無しさん:2005/11/07(月) 16:10:41
別の掲示板で質問してみたのですが、回答がいただけなかったのでこちらで質問
させてください。
OS:2000 Access:2000
フォームに貼り付けたコントロールボックスにPCにインストールされているフォ
ントの一覧を表示したいのですがやり方がどうにもわかりません。
アドバイスお願いします。
197デフォルトの名無しさん:2005/11/07(月) 16:27:31
>>196
API使うしか無いような希ガス。詳しくは知らない。
198デフォルトの名無しさん:2005/11/07(月) 16:47:32
>>196
オマエ回答をもらった直後にそれはないんじゃないか。

ttp://www2.moug.net/bbs/acm_v/20051107000009.htm
199デフォルトの名無しさん:2005/11/07(月) 17:03:00
API使うのは嫌なのか……
200デフォルトの名無しさん:2005/11/07(月) 18:03:18
>>198
回答いただいていたとはわかりませんでした。お騒がせしました。
201デフォルトの名無しさん:2005/11/09(水) 13:50:13
ご質問します。
Aフォームのテキストボックスへ、
BフォームのサブフォームであるBサブフォームの
テキストボックスの値を取得したいとき、
Aフォームのテキストボックスの、コントロールソースに

=[Forms]![B]![Bサブ].[Forms]![Bサブテキストボックス名]

と記述したのですが、値を取得できません。
なぜでしょう。
ご指導のほど、よろしくおねがいします。
202デフォルトの名無しさん:2005/11/09(水) 14:05:35
> =[Forms]![B]![Bサブ].[Forms]![Bサブテキストボックス名]

=[Forms]![B]![Bサブ].[Form]![Bサブテキストボックス名]

じゃないの。
203201:2005/11/09(水) 14:05:50
訂正です。

=[Forms]![B]![Bサブ].[Form]![Bサブテキストボックス名]

と入力しています。
よろしくおねがいします。
204201:2005/11/09(水) 14:07:20
>>202
すいません。訂正遅かったようです。
=[Forms]![B]![Bサブ].[Form]![Bサブテキストボックス名]
と入力しているのですが、値を取得できません・・・

205デフォルトの名無しさん:2005/11/09(水) 15:13:44
で、値を取得できずにどうなってるの?

○○エラーになるとか、給料減らされたとか、
何か現状ってのがあるだろう。
206201:2005/11/09(水) 15:32:03
何もなりません。
空白ですね。
MDB最適化したら直りました。
ご迷惑おかけしました。
207デフォルトの名無しさん:2005/11/09(水) 19:37:15
どう見ても精子です。
ありがとうございました。
208デフォルトの名無しさん:2005/11/15(火) 15:39:46
メインフォームの非連結のテキストボックスに納品日を入力したら
サブフォームのテーブルにそのデータを反映させるやり方がわかりません
どなたかご指導よろしくお願いします
209デフォルトの名無しさん:2005/11/15(火) 16:12:02
>>208
AfterUpdateイベント
210デフォルトの名無しさん:2005/11/29(火) 17:24:15
Access2000です
帳票フォームについて質問があります

オプションボタンのはい、いいえを選択し、
値によってテキストボックスの色を変更したり仕様不可にしたいと考えています
backcolorやEnabledプロパティを変更すると
全てのレコードの色が変わってしまったり仕様不可になったりしてしまいます
特定のレコードのみ行うということは出来ますでしょうか?

211デフォルトの名無しさん:2005/11/29(火) 17:27:16
できません
212デフォルトの名無しさん:2005/11/29(火) 17:27:59
ああ、でも条件付き書式でなら一応は可能。
オプションボタンの値をレコードに保存してないとダメだろうけど。
213デフォルトの名無しさん:2005/11/30(水) 17:43:15
>>210をよく読まずにカキコ

入力内容については更新前処理やら更新後処理やらで特定の条件時に事実上
テキストボックスに値を入れさせない処理はできるはず。

テキストボックスの色をレコード毎に変えるのは不可能。

が、
※色が透明なテキストボックスは作れる。
☆詳細セクションに連結オブジェクトフレームは配置できる。
ΨテーブルにはOLEオブジェクトを保存する事が出来る。
♪連結オブジェクトフレームのコントロールソースにはDlookup関数が指定できる

まあ、がんばれ(手間を掛ける価値があるのなら)
214デフォルトの名無しさん:2006/02/07(火) 00:39:46
test
215デフォルトの名無しさん:2006/02/07(火) 00:42:01
このスレ、dat落ちしたと思ってたんだけど、まだ生きていたんだな
216デフォルトの名無しさん:2006/02/13(月) 20:19:44
access2000のVBAで質問です。
あるルーチンの処理時間を測定したいのですが、
ミリ秒くらいの精度で測定する方法を教えてください。
217デフォルトの名無しさん:2006/02/13(月) 21:16:36
API
218デフォルトの名無しさん:2006/02/13(月) 21:16:56
APIの
GetTickCount()とか
timeGetTime()。
1msecの精度があるといわれているのはtimeGetTime()
つか、Accessでmsec単位必要なの?
219デフォルトの名無しさん:2006/02/13(月) 22:19:07
>>218
ども。やってみます。
ロジックによる処理速度の違いをアンポンタンに分かるように数字で見せる必要があったので。。。
220デフォルトの名無しさん:2006/02/14(火) 00:00:17
access2003での質問です。

フォームのテキストボックスに規定値を与えようとしてます。
そのとき、欠番を取得するクエリを利用したいのですが、うまく動きません。
テキストボックスのプロパティ、規定値へ、クエリを参照して指定しています。
表示される内容は#Name?となっています。
クエリ単体での動作は確認とれました。

規定値へクエリを埋め込む場合、何か注意が必要ですか?
221デフォルトの名無しさん:2006/02/14(火) 07:22:35
規定値にクエリ使えるなんて初耳。勉強になるなぁ。
222デフォルトの名無しさん:2006/02/17(金) 17:27:15
access2003の質問です。
VBA上からレポートのVBAコードをエクスポートしたいのですが、

Dim appAccess As Object
Set appAccess = CreateObject("Access.Application.9")
appAccess.OpenCurrentDatabase "target.mdb"
appAccess.VBE.ActiveVBProject.VBComponents("レポート").Export "hoge.vbs"

とモジュールと同じような感じでやってみると
エラーになってしまいます。
何か良い方策はないでしょうか。
223デフォルトの名無しさん:2006/02/17(金) 18:39:10
そういやageないと誰も気づきませんね....orz
224デフォルトの名無しさん:2006/02/24(金) 02:09:01
「レポート」っていうのは、レポート名?
モジュール名なら、「Report_レポート名」で指定しないと。
225デフォルトの名無しさん:2006/02/25(土) 01:00:42
アクセスmdbから、サイト上のmdbに接続することって可能でしょうか?
226デフォルトの名無しさん:2006/02/25(土) 02:15:24
サイト

〔at sight(一覧で、提示あり次第、の意)から〕手形などの決済期限。
227デフォルトの名無しさん:2006/02/25(土) 11:21:02
webサイトのことだとして

サイトがローカルのWindowsネットワーク上にあるなら可能。
サイトがWANの向こうでも、VPN接続したり
Web Services Toolkit みたいな仕組みを取り入れたりして頑張れば可能。
228デフォルトの名無しさん:2006/03/07(火) 21:40:27
ACCESS+SQL ServerでADO開発を行うのですが、お勧め本とか
あったら教えて下さい。
特に、排他制御等のトランザクション制御に関して、詳しい情報を
探しています。
229デフォルトの名無しさん:2006/03/07(火) 22:09:05
ここの住人にアクセスメインな人はいないと思われ。
ビジネスsoftかデータベースにでも移ったら?
230デフォルトの名無しさん:2006/03/08(水) 09:52:17
>>229
お前がそんなレスするから>>228が向こうでマルチしまくってるじゃないか
231デフォルトの名無しさん:2006/03/08(水) 11:25:34
マルチの原因はスレのミスマッチ
あるべき所に必要なスレが望ましい
TextSS のWindowsXP(Professional)64bit対応化おながいします

もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?

そういや64bitにネイティブ対応している2chブラウザてありましたっけ?
233デフォルトの名無しさん:2006/04/03(月) 17:54:54
Excel VBA では
dim d1 as double,d2 as double
d1 = 3
d2 = Application.NormSDist(d1)
msgbox d2

といったコードで標準正規分布が得られるのですが
AccessのVBAではエラーになるのです。
Accessで標準正規分布を得るにはどうすればいいでしょうか。
234デフォルトの名無しさん:2006/04/04(火) 06:21:54
自己解決しますた

VBエディタを開く
メニュー/ツール/参照設定/Microsoft Excel 9.0 or 10.0 Object Libraly をチェック
d2 = Excel.Application.NormSDist(d1)

しかし遅い遅い
235デフォルトの名無しさん:2006/04/04(火) 22:50:03
Access 2002 で clone とか find とかつかったらすぐコケるんだが、
(find は2度目使うと)
なんでだろ?
236デフォルトの名無しさん:2006/04/05(水) 00:38:20
日本語でおk
237235:2006/04/05(水) 18:35:57
>>236
それかよ _| ̄|○ili 俺にはどうしようもない
(゚∀゚)さすがにどうしようもないな。ああ、どうしようもない。 どうしようもないのだよ。
238デフォルトの名無しさん:2006/04/05(水) 22:44:10
日本語が不自由な方がいますね
239デフォルトの名無しさん:2006/04/10(月) 23:13:10
こんばんわ。
唐突に、先輩から「この原因調べて」と言われてあたふたしてます

XP+Access2003でCSVからtransfertextでインポートするVBAプログラムなのですが・・・
以下簡単なCSV

"aaa","bbb","ccc"
__________"aaa2","bbb2","ccc2"
__________"aaa3","bbb3","ccc3"
__________

こんなCSVファイルをとりこんだ時、2データ目からはエラーで取り込めません
何故2データ目から空白が先頭にあるのかも聞いてもわからない、でした
ACCESS97では普通に取り込みが出来たそうです。

このファイル、テキストで開くと空白が確認できますが、Excelで開くと空白を無視して
ちゃんと表示されています。
なので、ACCESSでも何かしてやれば先頭の空白を無視して取り込めるのではないか、
と思うのですが・・・なんともならないでしょうか?
240デフォルトの名無しさん:2006/04/11(火) 09:01:14
インポートする前に置換処理すればいいじゃない
241239:2006/04/11(火) 22:06:28
まあ、今日のところは結局開いて空白消すような処理放り込んで凌ぎましたorz
何十万件単位であるらしいから1行読んで消してなので重くなるかな・・・と。

でもお客さんの操作は今までの通りで、って事だしとまあ挟み撃ち(´・ω・`)
引き続き自分でも原因等調査ですよ・・・
242デフォルトの名無しさん:2006/08/18(金) 01:27:37
未だに97使いなんですが質問してもいいですか?
243デフォルトの名無しさん:2006/08/18(金) 03:01:32
>>242
どぞー
244デフォルトの名無しさん:2006/08/18(金) 06:25:22
>>243
ありがとうございます。

早速なんですが
クロス集計を使ってグラフ表示をしようと思って居るんですが、なかなかうまくいきません。

具体的にはクロス集計時に、ダイレクトに集計条件をクエリ内に記述すると問題ないのですが
条件に

[Forms]!フォーム名]!コントロール名]

で絞り込みを使用とすると

<名前> を有効なフィールド名、または式として認識できません。

のエラーがでてうまくいきません。 ほかの選択フォームなどでは問題なく出来ていた方法なの
ですが、クロス集計では集計の絞り込み条件をフォームからコントロールしたい場合特別な記述
方法があるのでしょうか?
ご存じの方おられましたら、よろしくお願いします<_o_>
245デフォルトの名無しさん:2006/08/18(金) 09:33:31
>>244
角括弧

[Forms]![フォーム名]![コントロール名]
246245:2006/08/18(金) 12:35:57
>245

申し訳ないです。 コピ編集のミスでそうなってますが、クエリではきちんと記述は出来ています

選択クエリとクロス集計での記述法に違いがあるような情報を見つけられなかったのですが
他の方法をとらないとだめなんでしょうか? 
247デフォルトの名無しさん:2006/08/18(金) 13:09:10
>>244
色々試してみたらどうでしょう

Forms!フォーム名.コントロール名
Form_フォーム名.コントロール名


問題部分がココ以外にあるのならその部分のコードを見ないことにはアドバイスのしようがないけどね
248デフォルトの名無しさん:2006/08/18(金) 13:34:34
Eval("[Forms]![フォーム名]![コントロール名]")
249245:2006/08/18(金) 23:37:10
>>248

ありがとうございます! うまく抽出できました。

これでまた進めることが出来ます。
ありがとうございました
250245:2006/08/18(金) 23:39:11
ご意見くださった方々、本当にありがとうございました。

本格的に使ってこなかったので、皆さんのご意見励みになりました。
また助けていただくこともあろうかと思いますが、よろしくお願いします。
251デフォルトの名無しさん:2006/08/23(水) 19:10:46
ACCESSで作った住所録を地域別に3つに分割して、
それぞれで入力・修正した後、結合したいと思います。
※これらはLANで繋がってはいません

これらの個々のデータは自動でIDがふられるようになっています。
このままですと3つのアプリで同じIDがふられてしまいます。
これを回避する方法をお教えください。




252デフォルトの名無しさん:2006/08/23(水) 20:52:07
GUIDでも振っとけば?
253デフォルトの名無しさん:2006/08/25(金) 08:53:45
教えてください

openformで where以下の条件を記載するとき、order byを記入するとエラーになります。

このときに降順表示をさせるためにはどのように記入すればいけるのでしょうか?
クエリ内への記載はその時々により条件が変更されるために、とるとこが出来ません。

よろしくお願いします。

254デフォルトの名無しさん:2006/08/26(土) 11:55:05
> openformで where以下の条件を記載するとき、order byを記入するとエラーになります。

WhereCondition 引数は、Where 句を指定するところであって、
「where以下の条件を」全部書けるところじゃねぇよ。
ちゃんとヘルプ嫁。

OpenArgs 引数で OrderBy の条件渡して、開かれるフォーム側で
処理するか、呼び出し側から直接 OrderBy ブチ込めば。
255デフォルトの名無しさん:2006/08/30(水) 04:39:22
意外と機能してるんだなこのスレw
256質問です。:2006/10/08(日) 00:40:58


Accessに画像データ・動画(mpg / avi)等を保存するにはどうすれば良い
でしょうか?

あと、すれ違いかもしれませんが上記と同様の事をDB2・Oracle等にも
行う事は可能でしょうか?
257デフォルトの名無しさん:2006/10/08(日) 08:49:16
>>256
OLEオブジェクトを埋め込みすれば可能だが、MDBのファイルサイズがすごいことになってしまうので
ファイルは普通のフォルダに格納してAccessでファイル名やパスだけ管理するほうがよい。
ファイルの操作はVBのファイル操作ステートメントやFileSystemObjectを使えば出来る。

また、Access2007では添付ファイルを格納できる新機能があるらしい。
258 256:2006/10/08(日) 17:32:00

>>257さん
ご回答ありがとうございます。
これから試してみます。

259デフォルトの名無しさん:2006/10/12(木) 12:45:34
Accessの整理をするために、全てのフォームの全てのコントロールやその種類などを取得したいと思ってます
対象のフォームを開かずに1つのmdbファイルの全てのフォームとコントロールを取得する方法を教えて頂けないでしょうか?
260デフォルトの名無しさん:2006/10/12(木) 12:56:50
使い勝手はよくないけど、とりあえず、
ツール→解析→データベース構造の解析
ダイアログの「フォーム」「すべて選択」「OK」で
プロパティ、コントロールとかもろもろの一覧が表示される。
261デフォルトの名無しさん:2006/10/16(月) 14:07:46
こんにちは、CHRISと申します。

サーバー上にMDBを置いて、2台の端末を使って1つのレコードの同じ項目を
同時に更新しようとしました。そしたら、「マシン 'XXX' のユーザー 'YYY' に
よってロックされているので、更新できません」というエラーメッセージが
表示されて、2台の内1台のマシンで更新処理ができませんでした。

MDB自体にロックがかかっているのか、レコード単位でロックがかかっている
のか分かりません。ASPを使っているのですが、MDBを開いてSQLを発行している
処理で落ちているようです。2台の端末を使ってMDBを同時に更新する場合、
更新のタイミングが遅かった方は何秒おき毎かでリトライをして、どうしても
更新できない場合はエラーメッセージを表示させて、「落ちない」ようにする
というような、具体的な何かよい解決方法はありませんか?

よろしくお願いします。
262デフォルトの名無しさん:2006/10/22(日) 00:15:39

質問させて下さい。

Accessとして格納出来るデータ容量に関する質問です。

Q1.最大MDBとして何ギガバイト迄格納する事が出来ますか?
Q2.本格的な業務システムを構築しようと思っているのですが(低コストの為)
   .NET( C# or VB.net) + Access
   VBA + Access
   どちらの方が良いでしょうか?
263デフォルトの名無しさん:2006/10/22(日) 00:33:01
A1.2G
A2.悪いことは言わんから業務システムのDBにMDB
使うのはやめとけ。
264デフォルトの名無しさん:2006/10/22(日) 00:38:17
>>263
どうもありがとうございます。
因みにSQLserverでしたら何ギガバイトまで可能でしょうか?
265デフォルトの名無しさん:2006/10/22(日) 00:54:36
MDB 2GByte
MSDE 2GByte
MS SQLServerにファイルサイズによる上限はない
266デフォルトの名無しさん:2006/10/22(日) 01:03:16


>>265
ご丁寧にありがとうございます。
267デフォルトの名無しさん:2006/10/24(火) 00:43:18
Prepared使うとAccessごと落ちるな。。。
DBはSQL ServerでクライアントにAccess使ってる。

Insert Into hoge (idNo) values(?)
って感じの単純なInsertなんだがな。
268とら:2006/10/25(水) 01:55:46
データベース(例えばDB2)とかなら一度作成したテーブルの上で
右クリック→DDLの生成とすれば、そのテーブルのDDL(CREATE文等)を
簡単に生成する事が出来るのですが、Accessではそういったコトは
出来ないでしょうか?

269デフォルトの名無しさん:2006/10/25(水) 20:23:44
出来ない。
フリーウェアを探すか自作汁。
270とら:2006/10/26(木) 00:34:19

>>269
そうでしたか、、、
使えませんね。Access。
因みにフリーウェア名とか知っていたら教えて頂けないでしょうか?
271269:2006/10/26(木) 01:11:59
3万円以上する外国製のシェアウェアなら、たまたま知っている。

フリーウェアがあるのかどうかは、知らない。
272とら:2006/10/26(木) 02:30:11


271
>>シェアウェアの名前は何ですか?
273デフォルトの名無しさん:2006/10/26(木) 15:51:11
>>272
それがCREATEだけの話なら、選択クエリを作ってそれをテーブル作成クエリにしたらいいんじゃね?

274271:2006/10/26(木) 20:29:37
>>272
> シェアウェアの名前は何ですか?

DBExplorer

▼スクリーンショット
ttp://www.slik.co.nz/pad/dbx-ss.gif

▼サイト
ttp://www.sliksoftware.co.nz/

汎用の DB 管理ソフトで、別に DDL 生成用ではないが、機能の一部として
DDL 生成機能もあるらしい。自分は、実際に使ったことは無いので、詳しい
ことは知らない。
評価版を DL できるので、興味があれば落として確認するとよい。

ただし Access のテーブルには DDL では作れないプロパティもあるので、
汎用ツールで生成された DDL での再現率には限度がある点を承知おかれたい。
275tora:2006/10/26(木) 21:42:13
>>273
なる程。そういう手がありましたね。ありがとうございます。


>>274
これから確認してみます。
276デフォルトの名無しさん:2006/11/09(木) 10:06:15
すいません、質問させてください

現在Access97+MDBで動いているシステムを
Access2000+SQLServerに移行しました

ですが、直後から残像が残るといわれまして確認したところ
1:ただ、リフレッシュされていない
2:フォームから取得する値を間違えて取っているような挙動をしているもの
の二通りがありました
1に関してはリフレッシュ、リペイントの厳密性の違いなのでしょうか・・・?
直ったには直ったのですが少し不思議でしたので

2に関してですが明細クエリの検索条件にフォームのコンボボックスに入れてある値を
[Forms]![サブフォーム名]![サブフォーム内のコンボボックス名]で取っているのですが
コンボボックスを空にして検索しても空になっているとクエリが判断せずに
以前の値を参照しつづけているようなのです
多分これも97から2000に移行した際の不具合だとは思うのですが皆目検討がつきません

もしよければ教えて頂けないでしょうか
よろしくおねがいします。
277276:2006/11/09(木) 14:55:54
すいません、書き忘れました
2の以前の値を参照し続ける状態ですが
毎回起こるわけではないようです

普段はコンボボックス内容が変われば自動で変わるんですが
変わらない時があり、一度変わらないようになると
その画面自体を終了させないことには直らない状態です
278デフォルトの名無しさん:2006/11/09(木) 15:30:38
>276-277
同様のトラブル(起こることは稀で、現象出すための操作はある程度つかめている)を持ったことがあるよ。
もしかして、VIEW表間に噛ませて、FormとSQLサーバでやりとりしてない?
どうも複数のFormを開いたり、トランザクションがぶつかったりして(デッドロック?)、
使っているVIEW表を解放していないようなんだよな。
279276:2006/11/09(木) 15:35:22
>278さん
VIEW表というのはSQLServerのVIEWでしょうか
それともAccess側のクエリでしょうか

今回はSQLServerをリンクテーブルとして読み込み、それをAccessクエリで一部項目を
抽出し、画面に出力している状態です。
280デフォルトの名無しさん:2006/11/09(木) 15:44:31
自分の場合は、同一SQLサーバVIEW表を使った別々のAccess側クエリで問題ありと問題なしがはっきりでたので
ACCESS側クエリに問題ありであった模様のようだった
281276:2006/11/09(木) 15:47:58
情報ありがとうございます!

対策としては
・AccessクエリをSQLServerのViewにあげてそれを直接参照する
・クエリを使わずSQL文でそのつどレコードセットに格納する

くらいですかね…?
何か他に妙案あったら教えてください。
282デフォルトの名無しさん:2006/11/09(木) 16:06:11
できるだけSQLサーバのDBMSの機能に乗っかるのも手の一つだと思うけど、
やはりクライアント側の一時表は使わないと、ロックの粒度がきつくなるから、
値の取得、参照に限って言うなら、
同一の人、同一のクライアントであっても、クエリごとに別クライアントと考えて、
新たにクライアント側に一時表を作ってあげるのも手の一つではないかなと。
283276:2006/11/09(木) 16:24:00
すいません

>新たにクライアント側に一時表を作ってあげる
というのがいまいち理解しきれなかったので詳しく教えていただけると幸いです
一時表、というのはどのような形で作ればいいのでしょう・・・
284デフォルトの名無しさん:2006/11/09(木) 16:38:22
いや単に、
一時表=クエリ(ACCESS側)・或いはVIEW作ってる?(ACCESS側)
です
一時表の利点としては、「見る」という動作に限ると(予約等を含むなら別ですが)、
一時表を作った後は、他を解き放てるので、いくつ作ってもデッドロックのリスクは少ないでしょう。
「見る」という動作に限ると、クエリをクエリで流用したりとか、そういうことはやめて、直接SQLサーバを参照するクエリを新しくどんどん作っていってはどうかと。
そこで、
・AccessクエリをSQLServerのViewにあげてそれを直接参照する
をよくよく読んでみるとそういう意味なのかなと思ったりするので、そうであったらすみません。
285276:2006/11/09(木) 16:55:40
ふむ・・・要するにクエリ1を使用してクエリ2を作るような事をせず
SQLServerのテーブルを直接参照してクエリ2を作れって事ですかね?

いろいろとありがとうございました
どの方法が一番ベストか、ちと検討してみます。
286デフォルトの名無しさん:2006/11/16(木) 00:57:15
すみません。レポートのプレビュー画面で、「ファイル」、「編集」などの
「メニューバー」を非表示にしたいのですが。どうすればよろしいので
しょうか。お願いします。
287デフォルトの名無しさん:2006/11/19(日) 03:14:15
Private Sub Form_Open(Cancel As Integer)
CommandBars("Menu Bar").Enabled = False
End Sub
288デフォルトの名無しさん:2006/11/28(火) 15:28:45
Windowsのタスクを使わずに、MDBファイル自身で
マクロを9時〜16時の間だけ一時間置きに実行させることはできますか?
289デフォルトの名無しさん:2006/11/28(火) 18:09:15
フォームにはタイマーイベントがある。
290デフォルトの名無しさん:2006/12/17(日) 06:13:06
すみません。Accessでも、アプリは作れますか?
291デフォルトの名無しさん:2006/12/17(日) 06:28:36
フォームとかあるじゃん。
VBとほぼ同じ仕様でほぼ同じことが出来るよ。
292290:2006/12/17(日) 06:33:55
>>291
ありがとうございます。AccessでもVBレベルのアプリが作れるとは、、、
293デフォルトの名無しさん:2006/12/18(月) 14:44:31
動的にコントロールを生成できなかったり
コントロールを配列にできなかったり
描画処理ができないのに  VBA でVBレベルのアプリが組めるんですか?
294デフォルトの名無しさん:2006/12/19(火) 05:30:22
>>292 から >>293 に至る伏線はどこか別スレにあるんだろうか
295デフォルトの名無しさん:2006/12/19(火) 19:48:24
ADPの場合、ローカルにテーブルは作れませんが、一体全体どうすれば
いいんですか?
296デフォルトの名無しさん:2006/12/20(水) 22:29:18
>>293
おまえがアフォなだけ
297デフォルトの名無しさん:2006/12/21(木) 00:46:20
レポートでヘッダーを縦印刷、詳細を横印刷、フッターを縦印刷って
可能でしょうか?
レポートのコードで
ヘッダーにPrinter.Orientation = acPRORPortrait
詳細にPrinter.Orientation = acPRORLandscape
を指定してもずっと縦か横にしか印刷されませんでした。
298デフォルトの名無しさん:2006/12/21(木) 03:01:23
>>296
素人は力仕事でなんでもできると思っているが。。。VBAは所詮VBA
299デフォルトの名無しさん:2006/12/21(木) 10:06:45
VBでmdbにデータを保存/読出を行うソフトを作ったんだが、
accessが入ってないパソコンにそのソフトをインストールして使用する場合、
どうすればいいの?accessを入れるしかないの?
300デフォルトの名無しさん:2006/12/21(木) 12:42:46
そうだお
301デフォルトの名無しさん:2006/12/21(木) 18:35:09
302デフォルトの名無しさん:2006/12/21(木) 20:42:44
>>301
さんきう。
色々方法あるのね、、SQLServerのストアドは権限の問題で使えないので、
やっぱ素直にMDB使うことにする。

303デフォルトの名無しさん:2006/12/21(木) 21:25:24
>>299
> VBでmdbにデータを保存/読出を行うソフトを作ったんだが、

そこを詳しく書け。
Accessオートメーションなら当然Accessが必要だし、
DAO/ADOオンリーなら元からAccessは関係ないだろ。
304デフォルトの名無しさん:2006/12/22(金) 17:42:50
>>299
っていうか、そのテストはすぐに出来るだろ。
Access入ってないパソコンで実行してみればいいだけだ。
それくらいやれよ
305デフォルトの名無しさん:2006/12/25(月) 19:53:55
>>299
MDAC でググレカス
306デフォルトの名無しさん:2006/12/27(水) 16:23:41
質問です。(access97・winXP)

プロシージャで、Month([日付])関数が働きません。

同じプロシージャ内のYear([〜])やDay([〜])も、
同db内のクエリーのMonth([〜])も出来るのに…。

何故でしょうか?
307デフォルトの名無しさん:2006/12/27(水) 20:50:38
どんなエラーが出るか書け
話はそれからだ
308306:2006/12/28(木) 18:31:17
「日付」コントロールを持つ、フォームAの「更新ボタン」クリック時、
フォームBの「日付2」に一年後の日付を入れる…というのが目的で、

日付2 = DateSerial(Year([日付])+1,Month([日付]),Day([日付]))としたら

実行時エラー13
型が一致しません

と出ます。

Month([日付])の部分を、1とか数字にすると、一応「日付2」に値は入ります。(無意味な値ですが;)
また、プロシージャを書いている際に、monthと小文字で書いても自動でMが大文字にはなりません。



ちなみに、日付2 = DateAdd("yyyy", 1, [日付])にしたら成功したので、今回は結果オーライなんですが…。
309デフォルトの名無しさん:2006/12/28(木) 20:44:29
参照設定で
Visual Basic For Applicationsをトップにもってくる
310306:2006/12/28(木) 20:56:55
>>309
開いてみたら、既にトップでした。

以下は
Microsoft Access 8.0 Object Library
Microsoft Dao3.51 Object Library
Microsoft Office Web Components 11.0
Microsoft activeX Data Objects 2.8 Library

…となっております。
311デフォルトの名無しさん:2006/12/28(木) 22:03:44
MsgBox TypeName([日付].Value)
がDate?
312306:2006/12/28(木) 22:32:58
>>311
はい。Dateです。
313デフォルトの名無しさん:2006/12/29(金) 01:31:56
オブジェクトブラウザでグローバルオブジェクトの
monthが
Function Month(Date)
VBA.DateTime のメンバ
になってる?
314306:2007/01/06(土) 19:43:50
レス遅れてすみません。自己解決しました。

dbの中に「month」という名のコンボボックスとクエリーが有り、(仮作成のままでした)
それらの名前を変更したら、>>308
>日付2 = DateSerial(Year([日付])+1,Month([日付]),Day([日付]))
が成功しました。(未だmonth小文字のままですが)

>オブジェクトブラウザ を示して頂いた>>313のお陰で気付きましたが、
初歩的なミスでお恥ずかしい。。。(/ω\)

お手数割いて頂いた方々、ありがとうございました。
315デフォルトの名無しさん:2007/01/09(火) 17:58:04
起動時の設定で「すべてのメニューを表示する」というチェックを外すと
ファイル、ウィンドウ、ヘルプしか表示されなくなりますが、
これをVBAから元のチェックの付いた状態に戻すことは可能ですか?
CommandBars("Menu Bar").Visible=True
としてもダメでした。
316デフォルトの名無しさん:2007/01/10(水) 12:57:03
>>CommandBars("Menu Bar").Visible

どうみても消えるだけだが・・・
も少し見てみれば判ると思う
チェックの状態のぷろぱちぃがあるだろうに
317デフォルトの名無しさん:2007/01/10(水) 21:53:12
>>316
CurrentDb.Properties("AllowFullMenus")=True
これでいけました。どうもでした。
318デフォルトの名無しさん:2007/01/10(水) 22:26:20
便乗だけど、それAccess再起動しないといけないよね?
319デフォルトの名無しさん:2007/01/18(木) 01:04:25
魔法使いの開発工房ってサイトで昔ちょこっと勉強してたんだけど、
サイトが消えちゃったみたい。
結構有名なサイトらしいんだけど、だれかアーカイブしてたらうp汁!
320デフォルトの名無しさん:2007/01/19(金) 16:48:49
フォーム上のテキストボックスのプロパティの書式で
日付データを mm/dd としています。

Access95ではちゃんと表示されているのですが
Access2003では実際には yyyy/mm/dd で表示されてしまいます。

どうしたら mm/dd で表示されるか教えてください。
MDBのフィールド定義はテキスト型で yyyy/mm/dd のデータになっています。
321デフォルトの名無しさん:2007/01/19(金) 23:12:24
>>320
こんっとロールパネル→地域と言語オプション
カスタマイズ→日付にある短い形式をいじる
322デフォルトの名無しさん:2007/01/20(土) 19:35:12
>>321
サンクスです。
でもそれだと個々のPCの設定になりますし、エクスプローラー等の表示にも影響しますよね。
で、コントロールソースでFormat関数をあてる方法がわかりましたので
その方法をとることにしました。
323デフォルトの名無しさん:2007/01/21(日) 19:44:19
Backup DatabaseとかのSQL文を実行するにはどうしたらよいのでしょうか?
ぐぐってみたのですが、サンプルが書かれたページが見つかりません。
どうぞ宜しくお願いいたします。
324デフォルトの名無しさん:2007/01/21(日) 20:18:15
>>323
クエリ
デザインビューでクエリを作成する
閉じる
(ツールバーの)SQL
325デフォルトの名無しさん:2007/01/21(日) 21:59:38
>>324
それだと、DELETE、INSERT、PROCEDURE、SELECT、UPDATEしか使えないのでは?
Backup Databaseを書いてもエラーになるのですが。
326デフォルトの名無しさん:2007/01/22(月) 04:43:12
パススルークエリー
327デフォルトの名無しさん:2007/01/24(水) 17:45:05
他のDBMファイルを開いて、そこにテーブルやフォームを作ったり
プロシージャを作成したりするにはどうすればいいですか?
328デフォルトの名無しさん:2007/01/25(木) 11:21:07
AccessからVBAでって事か?
set db = openDatabase(〜)
db.TableDefs.add(〜)
みてーな感じ。 詳細はヘルプ見るなりググるなりしろ。
329デフォルトの名無しさん:2007/01/25(木) 12:59:37
>>328
ここまでは分かりました。
Dim app As Access.Application
Dim frm As Access.Form
Dim db As Database
Dim mdbPath, frmName As String

mdbPath = CurrentProject.path & "\db1.mdb"

Set app = New Access.Application
With app
.Visible = True
.OpenCurrentDatabase mdbPath, True
Debug.Print app.CurrentDb.Name
Set frm = .CreateForm
frmName = frm.Name
.DoCmd.Save acForm, frm.Name
.Forms(frmName).Name = "ふぉーむ作りのてすと" '←エラー
'.DoCmd.Close acForm, frm.Name
End With

このあと、フォーム名をどうやって変えたらいいのかさっぱり分かりません。
330デフォルトの名無しさん:2007/01/25(木) 18:32:26
そのエラーメッセージ見ろよ。 それが答えだ。
まーAccessの仕様も結構アレだが。ヘタに「オブジェクト指向w」を名乗るマクロ付けたから無理があるんだよな。

名前変えるなら

DoCmd.Save acForm, frm.Name
frmName = frm.Name
DoCmd.Close acForm, frm.Name
DoCmd.Rename "hoge", acForm, frmName

って感じか。
createForm の初期名はいじれないから、作る・閉じる・名前変更 の3ステップが必要。
331デフォルトの名無しさん:2007/01/25(木) 20:34:14
>>330
どうもありがとうございます。
Renameメソッドで上手くいきました。

ところでついでに質問なんですが、GUIを通してできる
Accessの操作のほぼ全てはVBAで出来るんでしょうか?
またそれならなぜAccessにはExcelのようなマクロの記録がないんでしょうか?
332デフォルトの名無しさん:2007/01/26(金) 00:06:37
あの…試験で、JAVAプログラミングのIf文、For文ってのが出るんですけど、つまりどういう事なんですか?誰か詳しく教えて下さいm(__)m
333デフォルトの名無しさん:2007/01/26(金) 03:49:24
スレタイ100回嫁
334デフォルトの名無しさん:2007/01/26(金) 11:05:25
>>331
全て確認したわけじゃないが、ほぼ全て出来ると思っていいよ。
DoCmd のメソッドってメニューとほぼ対応してるし。

AccessでExcelのように「操作した内容をVBAとして記録」が出来ない理由は知らん。MSに聞け。
Accessが元々MS製じゃないからかもしらんし、VBAではない古い「マクロ」があるが故に
下位互換性の関係で仕様を合わせられないのかもしらん。 DoCmdとかヘンでしょ。
335デフォルトの名無しさん:2007/01/26(金) 22:58:27
VBAからモジュールを追加する方法を誰か教えてください
ApplicationクラスにCreateForm()やCreateReport()があって、
なんでcreateModuleやCreateMacroがないんでしょ
336デフォルトの名無しさん:2007/01/26(金) 23:12:48
モジュールについては書き込んだ後に発見しました。
どうもすいませんでした。
http://support.microsoft.com/kb/410621/ja
337デフォルトの名無しさん:2007/02/04(日) 18:53:15
Sub unko()
With Assistant
.Visible = True
With .NewBalloon
.Text = "ウンコ産まれそう"
.Button = msoButtonSetOK
.Show
End With
.Visible = False
End With
End Sub
338デフォルトの名無しさん:2007/02/15(木) 07:56:52
可愛いレジ店員がいるコンビニでバレンタインチョコを買う

袋は要らないと断り、チョコをレジに置いて釣り銭を財布に入れる

わざとチョコを置き忘れて足早に店を出て車に乗り込もうとする

可愛い店員が追いかけてチョコを手渡しに来る

「あの・・・これ・・・」

( ゚д゚ )あ、ありがとう
339デフォルトの名無しさん:2007/02/19(月) 22:31:18
可愛いレジ店員がいるコンビニでバレンタインチョコを買う

袋は要らないと断り、チョコをレジに置いて釣り銭を財布に入れる

わざとチョコを置き忘れて足早に店を出て車に乗り込もうとする

誰も来ない

( 'A`)
340デフォルトの名無しさん:2007/03/16(金) 19:43:05
Access2000で質問があります

半角カナ文字が大量に入っているデータをインポートした場合
元のテキスト状態に対してMDBファイルが2倍近い容量になってしまい困っています

データベースの内部はunicodeな為に半角カナ文字をunicode化してるのが
原因だと思うのですがこれを回避して、バイナリのまま取り込む方法は無いでしょうか?
(このフィール度に対して検索などは行いません)

よろしくお願いします
341デフォルトの名無しさん:2007/03/19(月) 01:48:14
初歩的な質問ですがAccess2007で
一つのフィールドのデータ型を「日付/時刻型」
にして異なるレコードに同じ日付を入力したら

インデックス、主キー、またはリレーションシップで値が重複しているので、
テーブルを変更できませんでした。重複するフィールドの値を変更するか、
インデックスを削除してください。。または重複する値を使用できるように
再定義してください。

とでてきました。重複する値(日付)を使用するための再定義とはどうすればできますか?
342デフォルトの名無しさん:2007/03/19(月) 15:58:00
初歩的な質問ですが、Accessのバージョン管理ってどうやっていらっしゃるんですか?
VSSでできるとは思うんですが、ちと高いですよね?

343デフォルトの名無しさん:2007/04/01(日) 13:40:48
>>341
その日付/時刻型のフィールド以外にもう1つのフィールドにキーを設定する。

>>342
Accessを使うような開発はバージョン管理自体してないと思う。
344デフォルトの名無しさん:2007/04/02(月) 01:37:02
>>342

VBA だけを出力して、Subversion にて、バージョン管理しています。
345デフォルトの名無しさん:2007/04/02(月) 23:01:36
 どなたかわかる方教えて下さい。
 表形式のフォームを開いた瞬間に、一番下のレコード行まで自動で
スクロールさせる方法はあるでしょうか?
 「これを使えば出来るよ〜」といった回答でOKです。
 FAQだったらすみません。
346デフォルトの名無しさん:2007/04/02(月) 23:32:26
>>345
Call DoCmd.GoToRecord(, , acNewRec)
でどう?
347デフォルトの名無しさん:2007/04/02(月) 23:34:33
重り、キーが沈むくらいの
348345:2007/04/03(火) 00:21:23
>>346
 できました。ありがとうございました。
>>347
 なるほど、そんな手もあったか!(笑)
349デフォルトの名無しさん:2007/04/05(木) 00:33:27
すみません。H3.3.3とテキストで入力したとき。表示をH03.03.03という形
で前ゼロをつけるには、どのようにすればよろしいのでしょうか。
よろしくお願いします。
350デフォルトの名無しさん:2007/04/05(木) 00:46:16
test
351デフォルトの名無しさん:2007/04/08(日) 16:42:53
>>340
リンクして使えば。
352デフォルトの名無しさん:2007/04/13(金) 20:27:48
>>349
テーブルデザインビューで日付時刻型のフィーるどの書式をgee\.mm\.ddにするのはダメ?
入力はH3/3/3で表示はH03.03.03になるみたい。
Access2000でやてみた。
353デフォルトの名無しさん:2007/04/13(金) 20:30:53
>>340
Unicode圧縮ってASCII文字みたいのじゃないと圧縮にならんのね。
元テキストが大量でmdbファイルがでかすぎなら他のDBのほうがいいのかも。
354デフォルトの名無しさん:2007/05/01(火) 10:05:15
教えてくれ。
突然なんのエラー表示もなくAccessが落ちたりするんだけど、
原因はどんなことが考えられるかな?

WindowsXP Pro
Access2000 + ADO
よろしく
355デフォルトの名無しさん:2007/05/02(水) 00:43:07
たまたま2kのファイルを2003で開いてVBA動かすと画面吹っ飛ばない?
ウチだけ?
あとファイルサイズが1GB越えるとMDB壊れやすくなんない?
356デフォルトの名無しさん:2007/05/02(水) 01:48:10
>>354
いかずち
357デフォルトの名無しさん:2007/05/02(水) 01:49:32
>>355
つかいかたしだい
つなぎかたしだい
つなぐものしだい
358デフォルトの名無しさん:2007/05/07(月) 03:00:06
>>354
新規MDBを作成して、全オブジェクトをインポートしてみたらどう?
359デフォルトの名無しさん:2007/05/07(月) 03:00:10
>>354
新規MDBを作成して、全オブジェクトをインポートしてみたらどう?
360デフォルトの名無しさん:2007/05/07(月) 05:29:42
>>354
いつまで正常に動いてた?
プログラムやその他書き換えた部分はある?

ウィルスチェックソフトがマクロウィルス検索して死ぬケースもあったから
一旦チェックを無効にしてみるとかはどう?

361デフォルトの名無しさん:2007/05/07(月) 06:55:43
違うPCがあるならそちらでも実行してみよう

あとプログラムやフォーム等修正するときは
こまめにバックアップ取りましょう
362sake:2007/05/10(木) 04:25:40
Set Access = Nothing
363デフォルトの名無しさん:2007/06/17(日) 09:49:17
とりあえずアクセスについてるサンプルの在庫管理というのをを作ってそれをmdeに変換しようとしたのですがmdeのメニューがグレー化になっていて作れません。
どうしてでしょうか?
364ひろみつ:2007/06/17(日) 17:53:02
SQLiteつかえ。ばかやろう。
365デフォルトの名無しさん:2007/06/17(日) 23:52:22
>>363
バージョンが違うという可能性はないのかい。
Access 2002-2003でも、MDBファイルを新規作成すると、互換性のために
既定ではAccess 2000形式のファイルになるはず。
もし変換元のMDBがアプリと違う形式なら、いったん使っているバージョンと
同じファイル形式(Access 2002使ってるなら2002形式、2003使っているなら
2002-2003形式)に変換してみるとか。

関係ないなら、せめてバージョン情報を出してもらわんと、アドバイスもしづらい。
366デフォルトの名無しさん:2007/07/02(月) 14:55:25
access97&winXPproです

★オートメーションエラー ってなんですか?(ノД`)★

Dim 【cnn As Database】
Dim rs As DAO.Recordset

の【〜】内の部分が青く反転してます。


帳票フォームからフィルタをかけて単票フォームを開き
単票フォームの「更新ボタン」を押すと
そのレコード更新&新規レコードを追加するモジュール(DAO)で、最初は動いていました。

帳票>単票のフィルタに、最初クエリ使っていて、
次にVBA
DoCmd.OpenForm "単票フォーム", , , "ID = " & Forms!帳票!ID&
に変えてみた処、単票フォームは同じように開くのに、
モジュールを動かすところに来て「オートメーションエラー」です。。

一度、クエリのフィルタに戻して大丈夫だったのですが
単票フォームをあちこち改良してるうちに、再発しました。

モジュールが悪いのか単票フォームなのか帳票フォームなのか、
そもそも既にクエリ&フォームで開いている元テーブルにデータ追加が出来ないってことなのか・・・
367デフォルトの名無しさん:2007/07/02(月) 15:39:37
自己レスです

【〜】部分、一度消して書き直したら、何故か治りました。。。
フィルタも、クエリでもVBAでも、どっちでもイケルし・・・


なんだったんだー!1週間も悩んだのにぃぃぃ〜〜〜〜(゚Д゚#)
368366:2007/08/02(木) 19:49:55
治ったと思った↑のオートメーションエラーが頻発します・・・(/_;)

>>367の書き直しすると一時出なくなりますが、また忘れた頃に出てくる。。。


根本的解決法ありませんか?
369デフォルトの名無しさん:2007/08/13(月) 16:26:28
質問があります。

ACCESSで作られたアプリケーションがあるのですが、
それをVBのソースコードとして読めるようにする方法はありますか?

アプリケーションを実行するためのEXEと同じフォルダに、
CABファイルがあり、それを解凍するとDLL,MDBなどのファイルがあります。
MDBを開くと、アプリケーションの中で利用しているデータが格納されている
のですが、肝心のフォームが見つかりません。

DLLのなかにフォームははいっているのでしょうか?
DLLを逆コンパイル(?)すればVBのソースが出てくるのでしょうか?
またはまったく別のことをしているのでしょうか私は(涙)

お手数ですが、よろしくお願いします。
370デフォルトの名無しさん:2007/08/14(火) 00:16:54
muri
371369:2007/08/14(火) 13:49:34
>>370
ありがとうございます。
あきらめます。
372デフォルトの名無しさん:2007/08/14(火) 23:04:01
フォームが無くてもモジュールがある場合もある
mdbをテーブルリンク先としてしか使ってないならむり
373デフォルトの名無しさん:2007/08/14(火) 23:49:18
>>372
Accessで作られたって書いてあるんだからそれはないだろ
374デフォルトの名無しさん:2007/08/20(月) 16:53:02
Access2007の機能である
作成タブ->複数のアイテム
でSelect文の結果を一覧で表示するところまで出来たのですが,
これはインタフェース上から値の変更はできないんでしょうか?

テキストボックスやコンボボックスを配置しても変更が一切変更できません.
データベースの値変更は手動でやるから攻めて見た目だけでも変わってくれたらと思いますが,なにか方法はないものでしょうか?
よろしくお願いします.
375デフォルトの名無しさん:2007/08/20(月) 23:02:28
新規フォームが出来てるだけだから名前漬けて保存してもう一回開けば編集できたよ
376デフォルトの名無しさん:2007/08/21(火) 14:53:58
何度か保存,再起動したことはありますが,だめでした.

とりあえず今のところはクエリでなく,テーブルを直接フォームに表示させるなら編集できるようだったので,
Select発行 すべてテーブルに値コピー フォームで編集 差分を本来のテーブルに反映
っていうとんでも仕様で動かしてます...
377デフォルトの名無しさん:2007/08/22(水) 02:53:33
SELECTの内容をここにうp汁
378デフォルトの名無しさん:2007/08/22(水) 02:54:53
>>376
>Select発行 すべてテーブルに値コピー フォームで編集 差分を本来のテーブルに反映
>っていうとんでも仕様で動かしてます...

とんでも仕様っつーか、普通のアプリはみんなそうだから気にしなくていいよ。
379デフォルトの名無しさん:2007/08/22(水) 13:45:18
みなさん反応ありがとうございます.

>>377
あまりにも長いので割愛させていただきます
やってることは単純で7つのテーブルからJoinしたくらいで,OrderやWhereは与えていません

>>378
そんなもんなんですか?
フォームを開くたびに2分ほど値コピーの時間待ちがあります.
もっとスマートな方法がある気がしたので投稿させてもらいました.
380デフォルトの名無しさん:2007/08/26(日) 09:13:10
PC1からVB6で作ったアプリでPC2に置いたAccessMDBにDAOで接続して"SELECT Now()"という
SQL投げてもPC2のシステム日付じゃなくてPC1のシステム日付が返されてしまいます。。。
PC2のシステム日付を取得する方法はあるのでしょうか?ADOとかならいけるんでしょうか?

他スレで返答がもらえなかったのでマルチしちゃいました。すいません。
381デフォルトの名無しさん:2007/08/26(日) 12:20:56
Jetエンジンはローカルで動いてるのでリモートのシステム日付は取れないよ
382デフォルトの名無しさん:2007/08/26(日) 15:30:22
winsockなりTTマクロなりで、telnetから取るとか。
自分はそれくらいしか思いつかない。
383デフォルトの名無しさん:2007/08/26(日) 18:31:22
WMI
384デフォルトの名無しさん:2007/08/26(日) 20:43:26
なるほど。
「PC2」ってののOSも知りたいところだね。
385デフォルトの名無しさん:2007/08/30(木) 15:24:04
vistaでaccessフォームのテキストボックスに
aaaaaaaaaaaaaという文字列の間に12345という文字列を追加させると
aaaaaa12345aaaaaaaとなるはずがaaaaaa12345というように
挟んだ文字列以降の文字列が消えてしまいます。
vista以外のOSではちゃんとできます。
access2000で作成して 実行させるPCもaccess2000です

解決方法があれば教えていただけますか?
386デフォルトの名無しさん:2007/08/30(木) 16:07:52
OSをデグレードする
387デフォルトの名無しさん:2007/08/30(木) 21:57:31
388デフォルトの名無しさん:2007/10/30(火) 19:55:41
Accessを使った経験がないのにVBAエキスパート(スタンダード)の資格を取ろうとしています。 が、なかなかうまくいきません。
翔泳社の「VBAエキスパート教科書 Access VBAスタンダード」をすでに5往復くらい学習して、試験も2回受けたのですが落ちました(1回目500点、2回目550点) 。
Microsoft Office Specialist Access version 2002の資格は持っています。ただ、試験勉強を独学でやっただけで、仕事でAccessを使った経験はありません。
現在失業中なので、とにかく履歴書に書くための資格がほしい、というところなのですが。
まずはAccessの使い方を学習したほうが良いのでしょうか?
389デフォルトの名無しさん:2007/10/30(火) 20:37:48
VBAのAはAccessのAじゃないぞ
390388:2007/10/30(火) 23:00:25
>389
はい、それは知っています。
VBAエキスパート Excel 2002 VBAスタンダードは取得したので、今度はAccess VBAをと思っているのですが。
391デフォルトの名無しさん:2007/10/30(火) 23:38:40
マ板の話題だな
392388:2007/10/31(水) 09:52:13
たびたびすみません、マ板てなんですか?
【PC等】のWindows板のことですか?
393デフォルトの名無しさん:2007/11/04(日) 20:57:12
ググれば一発ですが?
394デフォルトの名無しさん:2007/11/06(火) 19:03:03
VBAを使ってOracleにODBC接続して
クエリで抽出したデータを.csvファイルに書き込みたいんだけど、
抽出されたデータを.csvファイルに書き出す方法が分かりません。


クエリの結果がそのままファイルに出力されるような方法があるのか、
それともクエリの結果をどっかの変数に格納してその変数をファイル
に出力するような感じになるのかその変もよくわならないす。


現状ではボタンを押したらクエリが実行されて抽出されたデータが表示
されるところまでできたんですけど、表示しないで
.csvファイルで出力してほしいんですが、どうしたらいいのでしょうか。
答えでなくても、参考になるサイトでもなんでもいいので教えてください。
395デフォルトの名無しさん:2007/11/06(火) 22:29:48
>>394
DoCmd.TransferText
396デフォルトの名無しさん:2007/11/07(水) 21:15:21
AccessにはDate型の現在時間を取得する方法があるらしいですけど、
テーブルの中にDate型でない単なる文字列形式で20071107みたいに
日付データが入っているときに、日付がある範囲内におさまってるデータ
だけ抜き出したいってとき、どうしたらいいんでしょう。
Date型と文字列を比較してもうまくいかないっすよね??
397デフォルトの名無しさん:2007/11/07(水) 21:23:01
Date.StringValue
398デフォルトの名無しさん:2007/11/07(水) 23:08:11
20071107 ÷ 10000 = 2007 あまり 1107
399デフォルトの名無しさん:2007/11/08(木) 20:44:01
VBAにはデフォルトで出力先を選ぶファイルチューザーみたいな
ものないですか
400デフォルトの名無しさん:2007/11/08(木) 21:25:33
なんです…(+ΦyΦ)?此のスレたて馬鹿者は…
401デフォルトの名無しさん:2007/11/08(木) 21:25:57
デフォルトって何?
402デフォルトの名無しさん:2007/11/08(木) 21:27:58
>>400
失礼…(+ΦyΦ)!`実況+.かと思いました…
403デフォルトの名無しさん:2007/11/09(金) 01:14:02
>>399
WizHookかGetOpenFileNameでググレ
404デフォルトの名無しさん:2007/11/09(金) 11:50:58
>>396
DateSerial(Left([日付txt],4),Left(Right([日付txt],4),2),Right([日付txt],2))

#文字列の右4字目までが年、文字列左2文字が日、…「文字列右4字」の左2文字が月
405デフォルトの名無しさん:2007/11/10(土) 09:03:48
真ん中なんでMid()ではなくLeft(Right())なの?
406デフォルトの名無しさん:2007/11/10(土) 16:07:16
それは全レコード変換して比較しようとするから、遅いよ。
比較条件の方を文字列に変換して与えたほうがよくないか。
407デフォルトの名無しさん:2007/11/13(火) 22:15:10
Aceessのテーブルで、ただ単に一番上のレコードだけを抽出するselect文ってどのように書けばいいのでしょうか?
408デフォルトの名無しさん:2007/11/13(火) 22:24:21
select top 1 にょろ〜

ふたつくるときもあるけどな〜
409デフォルトの名無しさん:2007/11/13(火) 22:28:23
>>408
ってことは
select * from test where top = 1
でいいの??
table名がtest
410デフォルトの名無しさん:2007/11/13(火) 22:39:52
>>409です。トップの使い方は解りました。ありがとうございます。
ところで、
select top 1 フィールド名… from test
という事で指定できる事はわかったのですが。
top1で、フィールドがめちゃくちゃ多い場合など、レコードの一行目を全て指定する事は
できないのでしょうか?それともフィールド名を全て書く必要があるのでしょうか?
411デフォルトの名無しさん:2007/11/13(火) 22:43:47
問題が解決しました!!
select top 1 * from testでいけました
412デフォルトの名無しさん:2007/11/14(水) 16:04:04
今WinXPでACCESS95、97、2000、2003が入っているんですが。
昨日ACCESS2003のSR3当てたらいままで保存出来てたmdbファイルが
保存ボタン押すと強制終了するようになっていまったんですが
同じ状況の人います?

保存できないから使いもんになんないですよ!
413デフォルトの名無しさん:2007/11/14(水) 17:07:14
新しいMDB作って全部インポートしてみるといいかもしんない
414デフォルトの名無しさん:2007/11/15(木) 01:40:01
39
415デフォルトの名無しさん:2007/11/20(火) 15:21:06
Access から SQL Server へ接続した際の質問です。
Access にてテーブルを開き、右クリック→インポートを選び、
ファイルの種類「ODBCデータベース」を選び、接続した場合は、
すべてのテーブルにおいて、インポートすることが可能です。
しかし、AcesssVBA にて、以下のコードでアクセスすると、ある特定の
テーブルにアクセスできず、エラーで停止してしまいます。
(別なテーブルは、以下のコードでアクセスする事は可能です。)
ConnectionString あたりに問題があるのでしょうか。

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim str As String
cn.ConnectionString = "driver={SQL Server};server=ser;uid=sa;pwd=;database=FA"
cn.ConnectionTimeout = 10
str = "SELECT * FROM HOKEN"
rs.Open str, cn, adOpenKeyset, adLockReadOnly  ←この行でエラーで止まる場合があります。

※str の中でテーブル名を「HOKEN」としているとアクセス出来ないが、
それを「TANKA」に変更するとアクセス出来る。
416デフォルトの名無しさん:2007/11/20(火) 19:41:35
エラーの内容ぐらい書けよ。
とりあえずODBCなんてやめれば?

cn.ConnectionString = "Provider=SQLOLEDB.1;Password=;User ID=sa;Initial Catalog=FA;Data Source=ser"
417415:2007/11/22(木) 09:59:19
>>416
レスありがとうございます。

ConnectionStringの内容を書いているように変えてみたのですが、
ある特定のテーブル「HOKEN」のみアクセスが出来ず、rs.openの時点で止まりました。
エラーは以下のようになりました。

●あえてサーバ上に存在しないテーブル「KIHON2」を指定した場合。
実行時エラー
オブジェクト名'KIHON2'は無効です。

●サーバ上に存在するが、プログラムで読めなかったテーブル「HOKEN」を指定した場合。
実行時エラー
キーワード'HOKEN'付近に正しくない構文があります。
418デフォルトの名無しさん:2007/11/22(木) 13:15:02
str = "SELECT * FROM [HOKEN]"
これでもダメかな?
419415:2007/11/22(木) 14:02:39
>>418
読み取ることが出来ました。非常に助かりました。ありがとうございます。
420415:2007/11/22(木) 14:23:41
調べてみたのですが、分からなかったのでここで質問します。
SQL構文でテーブル名を[]を使う表記方法って何か意味があるのでしょうか。
そもそも、そういう表記をしたサンプルは見当たりませんでした。
SQL Server の特有の仕様であるとか、誘導していただけるだけでも結構です。
よろしくお願いします。
421デフォルトの名無しさん:2007/11/22(木) 15:35:08
>>420
http://msdn2.microsoft.com/ja-jp/library/ms175874.aspx
要は普通使えない名前(予約語とかスペースが入ってたりとか)をテーブル名や列名に使うときに付ける。
「HOKEN」なら普通に使えると思うんだけど、なんか違う名前でもお使いでないかい?
422415:2007/11/22(木) 16:23:58
>>412
情報ありがとうございます。

フィールド名においても、Useというものを入れるとエラーで終わったり
していましたので、そのあたりが関係してそうですね。
もしかしたらスペースが入っていたのかもしれません。
テーブル名を変えるなどして良く調べてみます。
丁寧にありがとうございました。
423デフォルトの名無しさん:2007/11/22(木) 17:21:07
同名のViewとかを定義しているとか
実は全角で入ってるとか
424デフォルトの名無しさん:2007/11/22(木) 17:56:57
Accessてなんか裏技ないの?
Excelで隠しレースゲームができるみたいにさ。
425デフォルトの名無しさん:2007/11/22(木) 18:31:33
AccessにADOで接続して次のようなステートメントを発行しています。
========成功する例========
BEGIN;
CREATE TABLE `testmdb_article` (
    `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
    `pub_date` datetime NOT NULL,
    `headline` varchar(200) NOT NULL,
    `article` longtext NOT NULL,
    `reporter_id` integer NOT NULL);
CREATE TABLE `testmdb_reporter` (
    `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
    `full_name` varchar(70) NOT NULL);
COMMIT;
========失敗する例========
BEGIN;
CREATE TABLE `testmdb_article` (
    `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
    `pub_date` datetime NOT NULL,
    `headline` varchar(200) NOT NULL,
    `article` longtext NOT NULL,
    `reporter_id` integer NOT NULL);
CREATE TABLE `testmdb_reporter` (
    `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
    `full_name` varchar(70) NOT NULL);
ALTER TABLE `testmdb_article` ADD CONSTRAINT reporter_id_refs_id_79fe4b3d FOREIGN KEY (`reporter_id`) REFERENCES `testmdb_reporter` (`id`);
COMMIT;
もともと MSSQL 用に書かれた python の Django の ado_mssql で
python manage.py syncdb したときに自動生成されたクエリです。
出来れば FOREIGN KEY が付いている状態で動作させたいのですが・・・
426デフォルトの名無しさん:2007/11/23(金) 01:16:12
>>425
AUTO_INCREMENT って MySQL じゃなかったっけ?
Access だとこんな感じなんだけど、これじゃダメかい?

CREATE TABLE testmdb_reporter (
id AUTOINCREMENT PRIMARY KEY,
full_name CHAR(70) NOT NULL
);
CREATE TABLE testmdb_article (
id AUTOINCREMENT PRIMARY KEY,
pub_date DATETIME NOT NULL,
headline CHAR(200) NOT NULL,
article LONGTEXT NOT NULL,
reporter_id INTEGER NOT NULL,
CONSTRAINT fk_article_reporter FOREIGN KEY ( reporter_id ) REFERENCES testmdb_reporter ( id )
);
427デフォルトの名無しさん:2007/11/23(金) 02:56:07
Access自体が、Officeの裏技
428デフォルトの名無しさん:2007/11/23(金) 05:39:25
ありがとうございます
続きをやっているのですが今度はこんなエラーが出てきてしまって
先にすすめません><

com_error: (-2147352567, '\x97\xe1\x8aO\x82\xaa\x94\xad\x90\xb6\x82\xb5\x82\xdc
\x82\xb5\x82\xbd\x81B', (0, 'Microsoft JET Database Engine',
 "\x83N\x83G\x83\x8a\x8e\xae
'([django_content_type].[model] = %s AND [django_content_type].[app_label] = %s)'
\x82\xcc\x8d\\\x95\xb6\x83G\x83\x89\x81[ ",
 None, 5003000, -2147217900), None)
-- on command: "SELECT [django_content_type].[id],[django_content_type].[name],
[django_content_type].[app_label],[django_content_type].[model]
FROM [django_content_type] WHERE
([django_content_type].[model] = %s AND [django_content_type].[app_label] = %s)"
-- with parameters: ['message', 'auth']
429デフォルトの名無しさん:2007/12/08(土) 12:56:29
ベンダーから上がってきたシステムのコードを見たら、

日本語変数/関数
option explicitなし
Dim i,j,k as integer
定数極小で、たいがいリテラルで記述
ひたすらIf文並べてやたら長いプロシージャ

なんか頭が痛くなってきたんだけど・・・
これはAccess開発現場においてふつーのことなんですか?

430デフォルトの名無しさん:2007/12/08(土) 16:11:48
>429
入門書なんかじゃ普通に日本語変数名使ってるからなぁ。
発注側がコーディング規約示して縛るしかないんじゃね?
431デフォルトの名無しさん:2007/12/08(土) 17:53:13
>>429
素人ならともかく、開発で食ってたらふつーなわけない。
そのソフトハウスが、そういうレベルってだけの話では。

一業者の(たぶん底辺の)例をもってしてAccess一般を
語ろうとするのは、ちょっと無理。

もしハズレの業者をつかんでしまったのでどうすれば
いいかという話なら、>430 の通りかもしれないけど、
それはAccessに限らずP言語でもG言語でも一緒。

仮に自分のところなら、誰が書こうが内部のコードレビューで
NG食らうだろうから、そんなコードは外に出ようが無い。
432429:2007/12/08(土) 18:59:17
なるほど
比較的、取引のある会社に今回初めてAccessのシステムを発注したんですが、
それまでは一貫したコード規約だったので・・・
自分、Accessはまったく分からなく、ほぼ丸投げにしたのであまり偉そうなことも言えないけど、
Option Explicitのないモジュールを見た衝撃と言ったら、それはもう(ry
433デフォルトの名無しさん:2007/12/08(土) 20:53:57
>>429
定数が"まったく"無かったら、自動出力なコードかもしれない って思った。
434デフォルトの名無しさん:2007/12/08(土) 22:46:30
Dim i,j,k as integer
これはなにかおかしいのか
435デフォルトの名無しさん:2007/12/08(土) 22:48:45
i と j は variantになってると思うよ。
436435:2007/12/08(土) 22:50:56
あれ? 2002あたりから、大丈夫になったんだっけ? VB.netだけだっけ?
もうよくわからんくなった。
437デフォルトの名無しさん:2007/12/08(土) 23:24:27
438デフォルトの名無しさん:2007/12/09(日) 00:52:49
>>436
Office2000以降は今のところ全部VBA6.0で変わってない筈だから>>435でok
439デフォルトの名無しさん:2007/12/09(日) 01:45:46
残念ながら>>434みたいのが珍しくないのが最下層下請け開発会社(オフィスはマンションとかw)の現状ってやつです。
440435:2007/12/09(日) 13:42:50
>>438
了解した。 thx!
441デフォルトの名無しさん:2007/12/15(土) 22:05:41
>439
あるあるw
そういう奴に指摘すると
「なんて糞な言語仕様なんだVBは!」
とか言い出すww
442デフォルトの名無しさん:2007/12/16(日) 17:06:18
フランシーヌ様・・ドットーレは・・怒りでどうにかなってしまいそうです・・・

Dim i,j,k as Long

For i=12 to 255
 If j=1 Then
  Msgbox "あたり"
 End If
 If j=0 And i=256 Then
  Goto EXIT_DAYO
 End If
 While k<1
  Value=Cstr(j) & Cstr(k)
  k=k+0.1

 Wend
Next

EXIT_DAYO:
443デフォルトの名無しさん:2007/12/18(火) 21:39:57
なんかテーブルとクエリが200個、フォームとレポートが200枚くらいある
mdbを数個引き継ぐことになったんですが、なんか仕様書が一枚もありません。
くるくるぽんで仕様書を出してくれるフリーソフト無いでしょうか。
444デフォルトの名無しさん:2007/12/18(火) 22:21:11
地味にウンコの海をかき分ける
これ
445デフォルトの名無しさん:2007/12/19(水) 19:36:14
仕様書よむよりコーディングを読むほうがわかりやすいんじゃねえ?
446デフォルトの名無しさん:2007/12/19(水) 19:56:43
>>445
どのフォームがどのテーブルを参照してて、そのテーブルには
どういうカラムがあるのかとかをパッと参照できないじゃん。。。
デザインビューとデータシートビューを同時に並べて見比べる
こともできないし・・・。
447デフォルトの名無しさん:2007/12/19(水) 21:54:06
こんな感じで各オブジェクトの内容をテキストにしてまとめりゃ良いだろ
Access歴1ヶ月に満たない俺でもこれぐらい考えつくってのに、藻舞はセンスねえな

Set objFrm = Me

For Each objElms In objFrm.Controls
If objElms.ControlType = acComboBox Or objElms.ControlType = acTextBox Then
Debug.Print objElms.Name & vbTab & objElms.ControlSource
End If
Next
448デフォルトの名無しさん:2007/12/19(水) 22:10:49
俺もいろいろ解析ツールをつかってみたが、結局自分で作ったものが最高だった。
449デフォルトの名無しさん:2007/12/19(水) 23:35:33
明日からまたウンコの海を泳ぐ仕事がはじまるお・・・
450デフォルトの名無しさん:2008/01/07(月) 01:16:29
>443
このへんはどうかね?
ttp://homepage2.nifty.com/yyoli/obj.htm
死様の海を泳ぎきる手助けになれば幸いですが。

でも個人的感覚としては、その状態になってしまうと(ry
451デフォルトの名無しさん:2008/01/07(月) 22:22:30
ACCESS2003に関する質問です。
現在、ACCESSの勉強をしています。
データ連結したフォームの詳細セクションは、レコードセットの件数に応じて繰り返し表示されるけど、
データ連結をせずにコードから詳細セクションの追加・削除するにはどうしたらいいですか?
データ連結をせずにというのは、極端な話DBに一切アクセスせず=データ無し、ということです。

[背景]
実際には、データの保持にレコードセットを使う代わりに書籍クラスなど(のコレクション)を使用するということがしたいのですが
そのためには、上記の方法が判明すれば実現できるだろうと考え質問しました。

よろしくお願いします。
452デフォルトの名無しさん:2008/01/08(火) 00:09:19
連結フォーム使わないならフロントエンドはVBでいいじゃない
453デフォルトの名無しさん:2008/01/08(火) 01:21:25
ACCESSはデータベースと連結することを前提に作られてるからね。
その特性が利用できないと逆に不便になる。
454デフォルトの名無しさん:2008/01/08(火) 07:44:24
なんで書籍テーブル作らないの
455デフォルトの名無しさん:2008/01/08(火) 08:17:53
>>452,453
確かに、うすうす感じていましたが、連結フォームを使わなければ本領は発揮できないんですね
ACCESSにおける設計の選択肢を増やそうと思っていたのですが、
クラスを駆使したいような時は言語の再検討をした方がよさそうですね
今回は単に勉強しているだけなので、ここで区切りを付けデータ連結の勉強に移ろうと思います。

>>454
いえ、書籍テーブル及びADOを使ってデータ取得をし、そのデータを元に書籍クラスを生成するという流れになります。
456デフォルトの名無しさん:2008/01/08(火) 14:36:07
コード上でレコードセットの内容をいじっておきゃいいだけに感じるのは、
ワタシの読解力不足からでしょうか
457デフォルトの名無しさん:2008/01/08(火) 22:59:57
おれはクエリ作ってそれに連結すりゃいいだけに感じるけど
OOPな人は違うんだろうなきっと
458デフォルトの名無しさん:2008/01/09(水) 00:39:29
OOPとかご大層なもんじゃないよ>>455の言うことは
クラスのドンガラ作ってコレクションに入れることにこだわってるけど、
実現できることは構造体の配列と変わらん
というかコレクション使うと遅いので実用的じゃない
素直にワークテーブル作れと言いたい
459デフォルトの名無しさん:2008/01/11(金) 01:40:59
テーブルのルックアップで2列のコンボボックス、たとえば

1 | 山下
2 | 西田
3 | 小野

みたいなのがリストで表示されるものを作りました。1列目が
連結列で、2列目が名前です。しかしながら、
このままでは、表示が一列目のキーの数字になってしまいます。
列幅の指定で一列目を0cmにすると名前が表示されるのですが、
リストをドロップダウンしたときに、先に示したようにキーと
名前の2列ではなく、名前だけの一列になってしまいます。

また、一列目にキーがきていると、オペレーターが入力する時に
楽なのでこの順番は変えたくありません。

どうすれば、ルックアップで2列で、名前が表示されるように
できるのでしょうか。
460デフォルトの名無しさん:2008/01/11(金) 02:39:13
そういう時はコンボボックスの右隣にテキストボックス置いてそのコントロールソースを
=コンボボックス.Column(1) にするのが一般的だけど、その仕様にこだわる理由って
何かあるの?
461デフォルトの名無しさん:2008/01/11(金) 09:43:46
2列表示のリストにすればいいんじゃないの?
462デフォルトの名無しさん:2008/01/12(土) 19:58:09
>>459
コンボボックスのプロパティ一覧をもう一度良く見てみろ
463デフォルトの名無しさん:2008/01/12(土) 21:23:05
久々にAccess触ってます。
バージョンは2003。
レポートのソースにADOのRecordsetって指定できないんでしょうか?
クエリー作らなきゃだめですか?
464デフォルトの名無しさん:2008/01/12(土) 21:25:28
カーソルを変えれば医院で内科医
465デフォルトの名無しさん:2008/01/13(日) 01:24:51
クエリーにADOとかDAOとかの区別があるの?
466デフォルトの名無しさん:2008/01/15(火) 11:38:04
>>463
VBAでソース指定したいてことか?
467デフォルトの名無しさん:2008/01/17(木) 22:09:09
>>460
それって一般的なの?
468463:2008/01/21(月) 18:40:08
>466
それです。
VB6とどっかの帳票ツールなんかだと
Set Report.Source = Recordset
みたいな感じでできたので・・・
469デフォルトの名無しさん:2008/01/23(水) 11:34:01
>>468
レポートオープンイベントのときに
Me.RecordSource にSelect文ぶち込むわけにはいかないのかな?
470デフォルトの名無しさん:2008/01/23(水) 11:41:42
あ、ADOでしたね、失礼。
471463:2008/01/23(水) 19:55:44
>469
あ、なるほどそういう方向性か。
なんとなくできそうな気がしてきました。
試してみます、ありがとう。
472デフォルトの名無しさん:2008/01/26(土) 01:59:28
フォームやレポートのコントロールソースに式やSQLを書いたときに
それを後から検索したいと思いました。例えばコントロールソースに
select * from 区分マスタと書いて、それをVBAの
Application.Forms("フォーム").Controls(0).Value
みたいにして取得できるかなと思ったのですが、なんかうまく取得
できませんでした・・・。GUIのプロパティ画面で見えている
コントロールのプロパティの値を取得することはできないのでしょうか
473デフォルトの名無しさん:2008/01/26(土) 12:57:49
自分で「コントロールソース」って書いてるんだから、「Value」じゃなく
「ControlSource」じゃないの。
474デフォルトの名無しさん:2008/01/26(土) 17:58:24
ちょっと聞きたいんだが、モジュールとかフォームのバージョン管理ってどうやってんの?
まじで悩むんだけど。svnに突っ込んでみたけど、svn diffしてもバイナリの差分しか
取れないし、どうやって履歴管理してんの?
475デフォルトの名無しさん:2008/01/27(日) 15:16:16
ふつうはsaveastextしたファイル単位(オブジェクト単位)じゃね?
VSSが無いと入出力が面倒だけど。
476デフォルトの名無しさん:2008/01/28(月) 12:59:05
>474
http://msdn2.microsoft.com/ja-jp/library/ms181088(VS.80).aspx
とか参考にならないかな
実は俺もやった事ないのだが
477デフォルトの名無しさん:2008/01/31(木) 22:44:07
やったこと無い事じゃなくて、現状どうやってんの?
478デフォルトの名無しさん:2008/02/01(金) 00:48:35
過去も現状もやったことねえよ
479デフォルトの名無しさん:2008/02/02(土) 20:58:24
たとえばフォームのプロパティをプロパティダイアログから変更したとして
その変更履歴もVSSから差分を確認できたりするの?
480デフォルトの名無しさん:2008/02/03(日) 22:31:57
型番  日付
A    2008/02/03
B    2008/02/04
C    2008/02/05
D    2008/02/06
E    2008/02/07
F    2008/02/08

エクセルで上記のような表があるとします。
クエリに関数を入れて本日〜4日後の2008/02/06までを”全て”
抜きとって表示したいのですが関数わかる方おられませんか。

2008/02/07と2008/02/08は不要としたいのです。
自動的に毎日4日間を抜き取ることはできますか?


481デフォルトの名無しさん:2008/02/03(日) 22:56:06
482デフォルトの名無しさん:2008/02/07(木) 19:10:38
すいません、アクセスの問題を解いてくれと言われて安請け合いしてしまったんですが…
実は私は全くわからないんです
簡単(らしい)な2つだけの問題なので、誰か教えてください…お願いします
http://www.vipper.org/vip733236.zip
483デフォルトの名無しさん:2008/02/08(金) 09:14:52
ちょw404wwwwwwww
484デフォルトの名無しさん:2008/02/10(日) 03:46:30
vistaでaccess2007を使用しています。市販のテキスト通りに操作をして、
フォームウィザードでフォームを作成し、新しいデータを入力しようとした所、
「新しい行に値を追加するにはまず行をコミットする必要があります。行をコミットしてから、
値の追加をしてください。」というメッセージが出て、入力が出来ません。
どうすればよいのでしょうか?宜しくお願いします。
485デフォルトの名無しさん:2008/02/10(日) 05:49:41
>482
うpロダの流れが速すぎて誰も問題見れてない疑惑。

>484
バージョンが合った本を参考にしてる?普通本の記事なら動作確認してるはずだが・・・。
症状からさっするに、自動コミット関連じゃね?
486デフォルトの名無しさん:2008/02/18(月) 23:38:59
フォームを開く時にパラメーターを渡すってOpenArgsかグローバル変数しかないの?
ていうかOpenArgsって複数形なのになんで引数一つだけなの?
普通、argsっつったら可変引数なんじゃね?
487デフォルトの名無しさん:2008/02/23(土) 12:53:12
accessでフォームを作ってみたのですが、
デスクトップのアイコンをダブルクリックすると、accessが起動してその中に
オレのデザインしたフォームが表示されます。

これをデスクトップ上のアイコンをクリックすると、
オレがデザインしたフォームだけ表示するようには出来ますか?

ベクターでDLしたソフトはアクセスは表示されません。
どうしたら良いのか教えてキボンヌ。
CとかC++とかJAVA?とかじゃないと駄目なんでしょうか??orz
488デフォルトの名無しさん:2008/02/23(土) 13:33:56
Access Runtime Edithion を使え
489デフォルトの名無しさん:2008/02/23(土) 13:46:41
>>488
accessで作って更にVBEってやつで弄くるのかと思ってました。むずかしすぐるorz
AREでできるんですか(ノД`、)ヒントありがとうです。
490デフォルトの名無しさん:2008/03/05(水) 00:42:36
質問です。テーブルに日付を入力する際に

H20/3/4

と日付を入力することになりますが

自分の会社が和暦で管理しているので

和暦コードで平成を4とすると

4200304

と入力した上で日付に変換させたいのですが・・・。

やはりVBAでないとだめですか?

関数で数値処理してどうにかしたいのですが。ご教示お願いします。
491デフォルトの名無しさん:2008/03/05(水) 08:39:59
関数で数値処理してどうにかなるぜ
492デフォルトの名無しさん:2008/03/05(水) 08:41:25
別テーブルにアクセスしてもいいならDLookupを使う
だめならIIFでいいよ
493デフォルトの名無しさん:2008/03/05(水) 08:54:46
西暦で 8/3/4と入れるとH20/3/4になるよ。複雑な関数作るよりラク。 
494デフォルトの名無しさん:2008/03/06(木) 21:41:34
Access SQLにはCase句がないんだっけ
IIFのネストじゃ不便やのう
495デフォルトの名無しさん:2008/03/06(木) 23:12:42
Switch関数を知っての狼藉か?
496デフォルトの名無しさん:2008/03/06(木) 23:21:35
Accessのテーブルの列属性の表をExcelのワークシートに書き出そうと思っても、
デザインビューを開いて表を選択コピーしても、張り付けられないのか。
どうすればいいんだ。
497デフォルトの名無しさん:2008/03/06(木) 23:58:24
「列属性の表」の時点で解読を断念した
498デフォルトの名無しさん:2008/03/07(金) 02:22:56
Accessのテーブルの列属性の表のコピペの貼り付けの可否の質問かい?
499デフォルトの名無しさん:2008/03/07(金) 07:40:26
テーブルのデザインビューの話か?
ならVBAからDAO.TablaDefとかで取得する
500デフォルトの名無しさん:2008/03/09(日) 01:07:03
教えて下さい。

姓・名・生年月日が同一の、重複するデータが50件あるとします。
例:たなかまきこ1981/2/24が3件
  いずみもとや1988/3/14が5件・・・
これらのデータにはそれぞれ異なる「入会日」が日付としてあるのですが、姓
・名・生年月日が同じデータの中で入会日が一番わかいものだけを抽出するに
はどういうデザインを書いたらよいでしょうか。

お手数ですが宜しくお願いいたします。
501デフォルトの名無しさん:2008/03/09(日) 01:22:42
1.姓・名・生年月日・入会日 のテーブルを作成する。会員TBと命名
2.姓・名・生年月日を主キーにする。
3.データを入会日順に並び替え、会員TBに追加する。

以上の手順を実行すると、会員TBには会員と一番若い入会日のデータが抽出される。
502デフォルトの名無しさん:2008/03/09(日) 02:10:21
同姓同名誕生日まで一緒の人間が50人いてどうしようって
年金の名寄せ処理くらいしか思いつかねえよw
503デフォルトの名無しさん:2008/03/09(日) 03:58:05
つまり質問者は社会保険庁でおk?
504デフォルトの名無しさん:2008/03/09(日) 04:22:51
ワロタ
505デフォルトの名無しさん:2008/03/09(日) 14:03:56
>>500
select 姓, 名, 生年月日, max(入会日) as 最新入会日
from データ
group by 姓, 名, 生年月日

>>501
姓・名・生年月日を主キーにしたら重複した49件が挿入できんだろが。

>>502
同じ人間が忘れて何度も会員登録することはある。そういうのが25人いて
それぞれ2回重複登録することはありそうだが。
506デフォルトの名無しさん:2008/03/09(日) 16:41:41
皆様、ご回答いただきありがとうございました。
505様、解決することができました。
アドバイスありがとうございました・・・!

本当に助かりました、ありがとうございました。
507デフォルトの名無しさん:2008/03/09(日) 19:36:55
教えてください。
下記のような勤怠テーブルがあります。
(実際には時系列でBさん、Cさんの勤怠も入り混じってます)

ここから日付ごとに「9時以前の稼働時間」・「9時から17時までの稼働時間」
・「17時以降の稼働時間」を割り出すには、どうしたらいいでしょうか。


日付           .│名前│ 勤怠

2008/03/03 07:00:05 │ A │ 出社
2008/03/03 15:03:32 │ A │ 退社
2008/03/03 17:02:55 │ A │ 出社
2008/03/03 19:35:04 │ A │ 退社
2008/03/04 08:34:12 │ A │ 出社
2008/03/04 18:42:25 │ A │ 退社
2008/03/05 07:35:02 │ A │ 出社
2008/03/05 17:06:47 │ A │ 退社
2008/03/05 18:02:24 │ A │ 出社
2008/03/06 15:26:47 │ A │ 退社

お願いします。
508デフォルトの名無しさん:2008/03/09(日) 20:16:20
edate
509デフォルトの名無しさん:2008/03/10(月) 20:39:21
擬似コードを5分で考えたけど長すぎて貼れなかった。ようは
出退ごとに時間をぶつ切りにしてループで3つの時間計の
区分に加算していけばいいのでわ。VBAで
510デフォルトの名無しさん:2008/03/10(月) 20:48:09
クエリ一行で済むだろ
511デフォルトの名無しさん:2008/03/10(月) 21:27:15
>>510
一行でやれるならさっさと見せてほしいわ。
512デフォルトの名無しさん:2008/03/10(月) 21:33:02
>>511
クエリで作れば確かにクエリ呼び出しの1行で済むわな・・・・
513デフォルトの名無しさん:2008/03/10(月) 23:03:23
少なくとも1行では無理ぽ

5回も6回も出社退社を繰り返したりしないとか、
かならず、出社したらその日中に退社するとか決まってるのかな。

3月5日にAさんが退社してないことになってるので、
それの対応も考えないといけない?

そのへんまでSQLでカバーするくらいなら(しなくても?)
VBで日付順に並べてfor文回す方が楽だ。
514デフォルトの名無しさん:2008/03/10(月) 23:25:05
まじめに答えると

勤怠リストに保存する際に計算して 9時前 9〜17時 17時以降
の労働時間フィールドに書き込むのが間違いなく実用的だな・・・

Forでまわしてもいいけど 1日に複数の出社があるので意外と複雑な処理になる

退社データ入力時に直近の出社データとの時間計算して3つに分けるべき
515デフォルトの名無しさん:2008/03/11(火) 00:15:06
       ____
     /      \
   /  _ノ  ヽ、_  \
  /  o゚⌒   ⌒゚o  \  もう17時以降から翌9時まで出勤しっぱなしの仕事はいやだお…
  |     (__人__)    |  
  \     ` ⌒´     /
516デフォルトの名無しさん:2008/03/11(火) 00:15:09
while 1 {
  if (st < 09:00 && ed < 09:00) {
    time1 += ed - st
    getTimes(st, ed)
  } else if (st < 09:00 && ed >= 09:00) {
    time1 += 9:00 - st
    st = 9:00
  } else if (st >= 09:00 && ed <= 17:00) {
    time2 += ed - st
    getTimes(st, ed)
  } else if (st >= 09:00 && ed > 17:00) {
    time2 += 17:00 - st
    st = 17:00
  } else if (st >= 17:00 && ed < 24:00) {
    time3 += ed - st;
    getTimes(st, ed)
  } else if (st >= 09:00 && ed >= 24:00) {
    time3 += 24:00 - st
    st = 00:00
  }
}
こんなかんじで!
517514:2008/03/11(火) 00:45:38
>>515

勤怠入力時に入力チェックくらいするだろw

>>516

VBAじゃないし
しかもそれじゃ・・・
518デフォルトの名無しさん:2008/03/11(火) 01:04:35
AccessもSQLServerとかのデータベースみたいに、ストアドファンクション
のようなユーザー定義関数作ってSQLで使えますか。
519デフォルトの名無しさん:2008/03/11(火) 01:28:27
>>514
逐次に計算するのも、〆で計算するのも同じだろう?
何かが違うのか?
520デフォルトの名無しさん:2008/03/11(火) 01:29:28
使える。

Round()関数の仕様が四捨五入じゃなくて丸めだから
JRound()関数とか勝手に作って本当の四捨五入関数としてSQLで使ったりしてる。
521デフォルトの名無しさん:2008/03/11(火) 01:31:01
すみません
いまさらですが>>507はフレックスタイムでお願いします
522デフォルトの名無しさん:2008/03/11(火) 01:53:57
>>507
これは勤務が日付をまたがる可能性はあるのか?
ex. 出勤 21:00→ 退勤翌日 08:00
523514:2008/03/11(火) 02:44:14
>>519
特に処理に違いは無いが、入力時に必ずチェックするだろ
出勤の後に退勤が入力されているかどうかなど・・・

その時に1件づつ処理したほうが間違いが起きにくい
コードが書けるし、何より処理が早い

1回の出勤・退勤で計算する処理が意外と複雑だから
複数人の1ヶ月の集計を表示すること考えると
時間かかるかもしれないぞ

前もって入力時に計算しておけば一瞬で1ヶ月集計&10人分でも
表示可能だ

SQL集計関数で1発でできるなら必要ないが、俺には思いつかんし
(正確には考えたくない)
それより逐一計算してやったほうがはるかに楽だし早い
524デフォルトの名無しさん:2008/03/11(火) 07:53:19
鉄道会社が一部の夜行を除いて
24時間営業しないのは
勤怠管理が激しく面倒になるからだろうな
525デフォルトの名無しさん:2008/03/11(火) 19:12:30
ボケが半端すぎて反応に困る
526デフォルトの名無しさん:2008/03/11(火) 20:21:59
アクセス2003を使ってますが、
一つのセルだけ上と同じデータを永遠
と入力するにはどうすればいいですか?

527デフォルトの名無しさん:2008/03/11(火) 22:32:45
おまえが使ってるのはエクセル2003
528デフォルトの名無しさん:2008/03/12(水) 00:28:29
名前、日時の順にソートして、
出勤退勤が交互に来てるのをチェック
二件ずつ日時をとって、
サブルーチン:出勤日時,退勤日時→各時間帯の変数にプラス。
名前が変わったら変数初期化して続きを処理。

こんな感じでどう?
529デフォルトの名無しさん:2008/03/12(水) 10:55:30
>>528

そんなことしなくても
逐次処理すれば1回の処理で済むと何度言えば・・・・

その処理じゃプログレスバー出さなきゃならん位
遅いはずだな・・・

途中でAPIでメッセージキュー処理しないとクリックしたりした途端
「応答なし」になるかもね
530デフォルトの名無しさん:2008/03/12(水) 14:24:47
>>529
逐次処理できない理由があるんジャマイカ?
元データが市販のタイムレコーダだったりとか。
531デフォルトの名無しさん:2008/03/12(水) 21:29:08
やっぱアクセスは遅いから駄目だな。
532デフォルトの名無しさん:2008/03/12(水) 21:35:46
日付           .│名前│ 勤怠

2008/01/01 00:00:01 │ A │ 出社
2008/12/31 23:59:59 │ A │ 退社




もういやだお・・・
533デフォルトの名無しさん:2008/03/13(木) 21:52:06
>>529
元の質問が「割り出し方」な件。

テーブル参照しかできない場合もあるし、
逐次処理って、タイムカードを挿すの忘れたアフォがいた場合、
修正箇所が分散するので、
レコード件数によっては
計算させるのも悪い設計じゃないと思う。
534デフォルトの名無しさん:2008/03/19(水) 00:06:38
値集合タイプにユーザー定義関数を使うことができますが、このときの
関数に何かパラメータを渡すことはできないんでしょうか。具体的に言うと、
「ファイルリスト」みたいな関数を作り、パスを渡して、そのディレクトリ中の
一覧をリストに表示するようなことをやりたいのですが。グローバル変数で
渡すことも考えましたが、ひょっとしてマルチスレッドで動いていたら、
おかしくなりそうな気がしてやめました。お知恵をお貸しください。
535デフォルトの名無しさん:2008/03/19(水) 00:39:44
面白いこと考えるね。
グローバル変数でいいんじゃないのかな。
マルチスレッドという話は聞かないから(マルチスレッドにしたい→無茶、みたいな流れはよく見るけど)。
特に他にいいやり方は浮かばない。>>536 に期待。
536デフォルトの名無しさん:2008/03/19(水) 00:46:14
ディレクトリを渡せればいいんだよね。
別に引数や変数で渡すことなくて、そのディレクトリをあらかじめ
ChDriveやChDirでカレントにしておけばいいんじゃね。
ユーザー定義関数内では何も考えずにカレントディレクトリを
検索すれば済みそうな希ガス。
537デフォルトの名無しさん:2008/03/19(水) 00:58:54
対象が何かわからないけど仮にコンボボックスとして、値集合タイプのプロパティは

1.テーブル/クエリ
2.値リスト
3.フィールドリスト

この3択だったはずだけど、ユーザー定義関数ってどこで使うの?
538デフォルトの名無しさん:2008/03/19(水) 01:39:30
539デフォルトの名無しさん:2008/03/19(水) 02:27:20
>>534
VBAでやれば?
540デフォルトの名無しさん:2008/03/21(金) 01:08:18
Access 2003 ランタイムとOffice 2003 SPを同梱して再頒布するのはOKだろうか?
Office 2003 SPはライセンス違反になるかな。

セキュリティー警告に対応するため、VBAにデジタル署名を入れたんだけども
Access 2003 の既知問題で SP1 以上のインストールが必要になってしまった。
541デフォルトの名無しさん:2008/03/22(土) 08:07:21
mdbを開いたときに、ユーザにより初期表示フォームを変えたいのですが、
mdbファイルに起動パラメータを付加するようなことは可能ですか?
選択メニューフォームなどは作成せずに、起動パラメータを付加した
mdbへのショートカットを複数作れたらと思ってます。
542デフォルトの名無しさん:2008/03/22(土) 08:55:54
543デフォルトの名無しさん:2008/03/22(土) 09:07:49
「ユーザーにより」なんだから
最初にログイン画面出して
ユーザー毎にログイン後の
ページを変化させるべきだろ
544デフォルトの名無しさん:2008/03/22(土) 10:57:00
>>542
ありがとうございます。それで行けそうです。

>>543
今回はユーザ管理機能は必要のない簡易システムの提供ですので、
ログイン画面やメニュー画面などを付加して、
ユーザ作業を増やすことは考えてません(ユーザ管理も必要ですし)。
1クリックでも省きたいとうのが質問の意図です。
545デフォルトの名無しさん:2008/03/22(土) 14:34:48
クリックがいやならPCを窓から投げ捨てればいいじゃない
546デフォルトの名無しさん:2008/03/22(土) 14:43:25
そこ、そんなに食いつくところか?w
547デフォルトの名無しさん:2008/03/22(土) 22:01:10
環境変数からユーザー名取れるだろ。
548デフォルトの名無しさん:2008/03/23(日) 00:01:10
ちょwwおまwww
WinのログオンユーザとAccessの管理ユーザ一緒かよwww
549デフォルトの名無しさん:2008/03/23(日) 00:11:19
SQL Serverだって同じ選択肢があるのだからいいだろ。そんなに変か
550デフォルトの名無しさん:2008/03/23(日) 03:24:15
Access使ってる時点で終わってるから
551デフォルトの名無しさん:2008/03/25(火) 20:14:47
フィールド1:姓+名+誕生日
フィールド2:入会日

上記のデータで、フィールド1が同一でフィールド2が異なる複数件のデータが
あるとします。
抽出クエリで、フィールド2が最大のものを抽出したいんですが、
この時にフィールド2が同じ日ならデータとして残しておく(最大抽出では消
えてしまう)ようにするにはどうデザインしたらいいですか?

すみませんが、教えて下さい。
552デフォルトの名無しさん:2008/03/25(火) 20:38:32
>>551
Select * from hoge Where 入会日 = (Select max(X . 入会日) from hoge X )
553デフォルトの名無しさん:2008/04/02(水) 00:30:22
Accessのリレーションシップの意味って何。
そんなんなくてもテーブルを結合してクエリー作れるし。
554デフォルトの名無しさん:2008/04/02(水) 00:49:27
>>553
参照整合性制約
555デフォルトの名無しさん:2008/04/02(水) 00:58:15
テーブルを結合したクエリーをSQL手書きしてるならそれでいい
ウィザードでマウスぐりぐりで結合定義してクエリ作るなら
あらかじめリレーションがあった方が的確に自動生成してくれる

table1 (id, hogeid, fuga)
table2 (id, fugaid, hoge)

なんとかjoin on table1.hogeid = table2.id
みたいなのを期待するときに
リレーション作らないままウィザードでクエリ作ると
table1.id = table2.id
とかを勝手に想定して結合してしまうので
手で切り離して定義してっていちいちうざい状態になる
556デフォルトの名無しさん:2008/04/02(水) 01:06:04
そんなことよりクエリのSQLエディタの手抜きぐあいはなんとかならんのか。
超書きにくいわ。せめてキーワードをハイライトしてくれればいいのに
557デフォルトの名無しさん:2008/04/02(水) 01:57:13
だなw単なるメモ帳以下だよな
558デフォルトの名無しさん:2008/04/02(水) 06:52:23
俺は別のエディタにコピペして書いてるけどね。
アクセスにあれこれ機能を付加して肥大化するほうがイヤだね。
559デフォルトの名無しさん:2008/04/03(木) 20:31:29
Accessのクエリって遅いな。
レコード件数が多くて、ある程度負荷の高いSQLで検索を実行しようもの
なら、いとも簡単に待ち時間が長くなってしまうではないか。いつまでも
結果が返ってこないので、Accessを強制終了せざるを得なくもなるし。
SQLなんか使わずに、C++のプログラムでテキストファイルからデータを
読み込んで、直接制御すればほとんど待たなくて済んだ。
SQLはノロマか?
560デフォルトの名無しさん:2008/04/03(木) 20:39:25
それAccessのSQLが遅いというよりテーブルが遅い
ためしにPythonとかRubyからADODBで接続して
コンソールに出力させてみるよいいよ
同じSQL文なのにあまりに速くて驚く
561デフォルトの名無しさん:2008/04/04(金) 23:00:13
VSSのアドインを使ってみたんだけど、使いにくいなこれ。
CP932にマッピングできない文字はチェックイン時に文字化け
しちゃうし、他で編集したものを入れ替えてチェックインするのも
一苦労だし、まじうんざりした。
562デフォルトの名無しさん:2008/04/24(木) 16:35:03
サブフォームの名前変更したら
参照しているプログラムに怒られた(あたりまえ)なので、
プログラムの方も変更したのだが、それでもそんな名前の
サブフォームなんて知らねぇって怒られて、

むかついたのでサブフォームを一旦削除して、別名で作り直したんだけど、
やっぱり動かない状態になってしまった。

これってもうメインフォームから作り直すしかない?
563デフォルトの名無しさん:2008/04/24(木) 17:25:53
全オブジェクトをインポートし直せ
564デフォルトの名無しさん:2008/04/24(木) 23:08:18
>>562
/decompile スイッチでコンパイルし直してみたら。
http://support.microsoft.com/kb/819780/ja
http://support.microsoft.com/default.aspx?scid=kb;ja;814858
565デフォルトの名無しさん:2008/05/10(土) 00:45:09
すみませんが、教えてください。
csvデータをインポートすると、なぜか10桁の数値はインポートエラーとなり、9桁以下の数値はインポートされます。
10桁の数値もエラーとならずインポートできる設定がございましたら教えていただきたくお願い申し上げます。
566デフォルトの名無しさん:2008/05/10(土) 03:19:03
インポート先のフィールドが長整数型でしたw
なんてオチじゃねーだろーな
567デフォルトの名無しさん:2008/05/15(木) 20:40:29
こちらで初めての書き込みです。
教えて頂けませんか?セキュリティーのことで困っています。
ACCESS 2003を使用してます。
XPを積んでいる2台のPCで仕事をしています。
外付けHDDにACCESSのデータを置いて、
そのときに使用するPCに外付けHDDをつないで仕事をしています。。
起動すると、毎回、「ログイン・・・・」「パスワード・・」と表示されるのを煩く思っていました。
それを消そうとしてセキュリティーを触ったと思います。
1台のPCからは覗き修正できるですが、もう1台からは利用できなくなりました。
「権限がありません」というメッセージです。

新規にファイルを作りデータのインポートもやってみましたが、それでも、同じ状態で一台のPCからは侵入できません。

毎回、なんのメッセージも表示されることなく、誰でも利用できる状態にするにはどうしたら良いでしょう?
ACCESS 2000ではそのようにしていました。

お手数と思いますが、ご助言頂けないでしょうか?
568デフォルトの名無しさん:2008/05/15(木) 21:12:13
アクセス権はスレ違いだけれども…
現在アクセス可能な方のPCを使って外付けHDD全体に対して
アクセス権にUsersかPowerUsers辺りを設定したのだと思うので
今度はアクセス可能なPCでEveryone/フルコントロールにすれば良い。
569デフォルトの名無しさん:2008/05/16(金) 15:53:42
>>568
すれ違いでごめんなさい。
ご助言ありがとうございます。
とても困っていたので感謝致します。
やってみます。
570アクセスでアクセクしてサクセス:2008/05/17(土) 19:17:03
質問です
どっかの金庫持ってるような会社のせいで
当社も出力媒体に暗号化をしろと言う命令が
僕のところに飛んできました
1)
MDBをまんま出力していたんですが
これを暗号化(暗文)するには
どうしたらいいのでしょう
2)
ちなみに出力する
ファイルが「テキスト」の場合バイナリにしろ
って言う意見が別のhpでありました
バイナリって「絵(ピクチャー)」のデータですよね
どうすればテキストが絵のデータになるのでしょう
拡張子を取ればいいんですかね?

先輩方お願いいたします

571めっちゃ名無し:2008/05/17(土) 20:15:21
xpでアクセス2003使ってる者です。
クエリのSQLビューでフォントを大きくするにはどうすればいいんですか?まったくわかりません
572デフォルトの名無しさん:2008/05/17(土) 20:27:03
コピペでワードパットに落としてでかくするとかあ
573デフォルトの名無しさん:2008/05/17(土) 20:33:23
>>571
あのSQLエディタの糞さかげんは全ユーザーがうんざりしてるが
一向に改善されない。あきらめろ
574めっちゃ名無し:2008/05/17(土) 20:45:25
わかりました。ありがとうございました。
575デフォルトの名無しさん:2008/05/17(土) 21:09:55
>>570
スレチだけど簡単な方法として出力データをZIPパス化すれば?
576デフォルトの名無しさん:2008/05/17(土) 22:40:05
おおお斬新な切り込み方
しかしZipは即効パスワードばれないですか
窓の杜とかにあるらしいし
577デフォルトの名無しさん:2008/05/17(土) 22:49:58
>>575
しらべてみま
578デフォルトの名無しさん:2008/05/17(土) 23:13:52
>>576
パスの桁数増やせば運用上無問題
579デフォルトの名無しさん:2008/05/17(土) 23:54:37
いろいろ調べました
>>578さん のおっしゃるとおりです

ところで パス化ってパスワードを付けるってことですよね
?Zipまでのパスきって パスワードつける技?じゃないですよね
できたらすごいなあ
 それでわ続きは明日にします
ありがとうございました
580デフォルトの名無しさん:2008/05/18(日) 00:06:24
出力媒体にTrueCryptでもかけとけや
581デフォルトの名無しさん:2008/05/18(日) 00:28:39
(内容の違う)10ファイルくらいを一気に同じ(別でも可)パスワードで作れればベスト
TrueCrypt・・・凄いソフトですねこんなのあるんだ
マジ寝ます
582デフォルトの名無しさん:2008/05/18(日) 00:52:08
普通にAccessでパスワード設定するんじゃダメなのかなー
583デフォルトの名無しさん:2008/05/18(日) 07:05:14
おはようございます
>>582 シフト押して開けるんじゃなかったけ?
今考えてるのは accessのフォームでパスワード入力
そのパスワードでZip暗号化 USB出力

VB+API?でやればできるんですかね
584デフォルトの名無しさん:2008/05/18(日) 07:39:05
> >>582 シフト押して開けるんじゃなかったけ?
いくらなんでもそれはねーよ
585デフォルトの名無しさん:2008/05/18(日) 17:15:04
AccessのというかOfficeのパスワードはぶっちゃけザルだから・・・
586デフォルトの名無しさん:2008/05/19(月) 01:24:37
>>571
[ツール]-[オプション]-[テーブル/クエリ]-[クエリ デザインのフォント]で
変えられる。
ただしSQLビューだけじゃなくデザインビュー(QBEグリッド)も変わる。
587デフォルトの名無しさん:2008/05/19(月) 19:09:14
>>571
cseにコピーしてspl崩し
588デフォルトの名無しさん:2008/05/21(水) 00:28:20
フォームを開いて、入力された値を返すようなことをグローバル
変数使わないでできないですかね・・・。
589デフォルトの名無しさん:2008/05/21(水) 01:37:09
じゃ関数化すれば。
590デフォルトの名無しさん:2008/05/21(水) 05:43:52
2007のTempVars使え
591デフォルトの名無しさん:2008/05/22(木) 10:25:42
>>570
全社的に目立の「秘文」を導入すれば一発で解決する。
592デフォルトの名無しさん:2008/05/22(木) 20:18:56
あれ たかくね?
593デフォルトの名無しさん:2008/05/22(木) 22:09:34
>>570
「暗号化」をどういう意味で使っているのか知らないが、
データを平文で読めなくするという意味ならふつうに
標準機能で付いてる(強度はともかく)。
エンコード/デコードでヘルプ引け。

パスワードかけたいという意味なら、これもふつうに
標準機能で付いてる(強度はry)。

両方併用すれば、一応平文で読めないパスワードロックの
かかったファイルになる。別に他のソフトなんて要らん。
社内規程に沿いたいだけならそれでいいんじゃね。
本気でクラッカー対策したいなら、そもそもAccess使うな
(もちろんExcelもWordも)。というより、Officeスイートの
レベルでやることじゃないわそれ。
594588:2008/05/22(木) 22:11:10
できまちた。フォームってDoCmd.Open以外でも開けたのね・・・
595デフォルトの名無しさん:2008/05/23(金) 00:21:25
バイナリ=ピクチャ
には誰も突っ込まないのね。
596デフォルトの名無しさん:2008/05/24(土) 00:24:55
おいおい
バイナリ=ピクチャじゃないのはもう学習済みだぜ
>>593   ぐぐってきま ダイブ!!
597デフォルトの名無しさん:2008/05/24(土) 00:55:34
>>エンコード/デコードでヘルプ引け
ひいたけど分からんあすもよろしZzz
598デフォルトの名無しさん:2008/05/24(土) 03:03:08
Access 2003にはツールメニューのセキュリティに「データベースのエンコード/デコード」ってのがある。
2007は知らない。
599デフォルトの名無しさん:2008/05/25(日) 18:59:10
そういえばAccessって改行記号を読み飛ばしてインポートするって
聞いたけど マジですか?
600デフォルトの名無しさん:2008/05/25(日) 19:05:51
うは 今試したマジだよ
改行読み込ます方法ってある?
txt csvのインポートで
601デフォルトの名無しさん:2008/05/25(日) 19:05:51
レコードの区切りと見なされるってことではなくて?
602デフォルトの名無しさん:2008/05/25(日) 19:08:45
txtで今流行の3の倍数が読み飛ばされる

**データ**


改行


改行



**結果からレコードが出来ない(作る方法ある?)**




603デフォルトの名無しさん:2008/05/25(日) 19:13:33
2003では再現しないな。
ウィザードのプレビューでは飛んだように見えるが、実際に新規テーブルに
インポートしたらしっかり空レコードも入ってた。
なんか他に条件必要か。
604デフォルトの名無しさん:2008/05/25(日) 19:20:58
ぐっぐってみた
改行コードの違いみたいだ
ODBC経由でやるばいいらしい
@俺も試してみる
プレビューでダメだとあきらめたんで
ダイブ!

(Access2000)
605デフォルトの名無しさん:2008/05/25(日) 19:45:48
すまん普通に出来たわ・・・


すまん・・・603さん と びる
606デフォルトの名無しさん:2008/05/27(火) 21:22:45
救出上げ
Accessのページ皆さんどんな風に使ってます?
仕事で使ってるかた いますかー
607デフォルトの名無しさん:2008/05/27(火) 21:39:27
ちなみにページは2007で削除されますた
608デフォルトの名無しさん:2008/05/27(火) 23:30:09
ウエッブデベロッパー使えってこと?
609デフォルトの名無しさん:2008/05/29(木) 21:45:01
定期救出上げ
610デフォルトの名無しさん:2008/06/02(月) 20:09:27
マイクロソフトはAccessに力入れる気あるのかないのか
はっきりしろ
611デフォルトの名無しさん:2008/06/02(月) 20:36:56
はっきり無いと思う。
612デフォルトの名無しさん:2008/06/02(月) 23:48:43
Baseの出番だな
613デフォルトの名無しさん:2008/06/03(火) 02:23:42
それはない
614デフォルトの名無しさん:2008/06/03(火) 12:49:55
Accessは2000でほぼ完成の域に達している。
これ以上改良する余地が無い。
機能は多ければよいってもんじゃない。

615デフォルトの名無しさん:2008/06/03(火) 22:47:18
2GBの壁
同一mdb内でのフォルダ管理ができない
テーブル・クエリの印刷設定が保存されない
わけわからんエラーもろもろ

不満はこんなとこだな。
616デフォルトの名無しさん:2008/06/03(火) 23:18:33
>>614
ANSI SQL-92にしろ!
SQLエディタを使いやすくしろ!
いちいちクエリを作らないとSQL実行できないのめんどいんじゃなんとかしろ!
サブクエリが使えないケースがあるのを何とかしろ!
一時テーブルを作らせろ!
MDBでストアドを使わせろ!
ADPで接続先を外部に保存できるようにしろ!
ADPでSQL Server2005/2008に対応しろ!
わけわからんエラーをなんとかしろ!
VBAにスタックとキューとリストを追加しろ!
VBAでユーザー定義型をCollectionできるようにしろ!
617デフォルトの名無しさん:2008/06/03(火) 23:51:23
>>615
> 同一mdb内でのフォルダ管理ができない

これどういう意味?

618デフォルトの名無しさん:2008/06/03(火) 23:55:15
階層分け・区分けが出来ないって意味
619デフォルトの名無しさん:2008/06/04(水) 00:03:36
>>616
それ実現したら.NET+SQL鯖を売りこんでるM$の自殺行為じゃね。
わざと不便にして差別化してるわけだから。
とっとと移行汁といわれて終わりな希ガス。
620619:2008/06/04(水) 01:36:47
…と書いたものの、実現性を脇に置けば全面同意。
621デフォルトの名無しさん:2008/06/04(水) 06:11:28
大企業はしらんが、小規模零細企業の9割以上は、

SQL鯖なんて使ってないから、いまのままで充分なんだよ。
622デフォルトの名無しさん:2008/06/04(水) 19:43:29
改良する余地が無いとか素人がほざくからだ
623デフォルトの名無しさん:2008/06/04(水) 19:54:44
ACCESSってまだ2G制限あるのか。10年ぶりに使おうかと思ってたのにマジかよ。
624デフォルトの名無しさん:2008/06/04(水) 22:56:51
漏れの本職はアクセス開発一筋なんだけどね。
625デフォルトの名無しさん:2008/06/05(木) 23:51:49
accessはレポートが有るからいいよね
C++の人とかツールとか買ってレポート作るのかな
クリスタルレポート?
デルファイは外部ツールのなんとかレポート買ったみたいだけど
626デフォルトの名無しさん:2008/06/06(金) 00:19:34
質問があります。
日付の入力項目があり、「08/06/01」(年二桁)と表示させたいんですが、
スラッシュなしで6桁入力、スラッシュ入りで「8/4/31」入力しても
「00/00/00」の形式で表示するにはどうしたらいいでしょうか?
627デフォルトの名無しさん:2008/06/06(金) 01:31:48
>>626
フォームだよな?>入力項目
なら、フォームの日付の入力項目に更新前・更新後イベント作って、VBAで下記のコード入れればOK。
「日付の入力項目」って所は適宜フォームのテキストボックスの名前に変えること。

' 更新前イベントでチェック
Private Sub 日付の入力項目_BeforeUpdate(Cancel As Integer)
If Not (IsDate(日付の入力項目)) And Not (Len(日付の入力項目) = 6 And IsNumeric(日付の入力項目)) Then
' 日付形式でも、6桁の数値でもない場合、エラーを表示して更新を中止
MsgBox "日付に変換できません。", vbOKOnly + vbExclamation, "エラー"
Cancel = True
End If
End Sub

' 更新後イベントで変換
Private Sub 日付の入力項目_AfterUpdate()
If IsDate(日付の入力項目) Then

' 日付形式だったら、yy/mm/ddの形式に変換する
日付の入力項目 = Format(DateValue(日付の入力項目), "yy/mm/dd")
ElseIf Len(日付の入力項目) = 6 And IsNumeric(日付の入力項目) Then

' 6桁の数値だったら、「1桁目から2桁/3桁目から2桁/5桁目から2桁」 に変換する
日付の入力項目 = Mid(日付の入力項目, 1, 2) & "/" & Mid(日付の入力項目, 3, 2) & "/" & Mid(日付の入力項目, 5, 2)
End If
End Sub


628デフォルトの名無しさん:2008/06/06(金) 09:50:24
実質CP932限定なのを何とかして欲しい
629デフォルトの名無しさん:2008/06/06(金) 12:13:35
>>627
ありがとうございました!非常に助かりました
こんな発想はできなかったです…
630627:2008/06/06(金) 13:14:29
>629
漏れに感謝とかしなくていいから、藻前さんが答えてやれる質問には答えてやってくれ。
631デフォルトの名無しさん:2008/06/06(金) 17:00:50
しかし、それを全ての日付入力項目に記述しないといけないとすると、
なにもせずデフォルトのまま使うほうが賢いんじゃねえ?
632デフォルトの名無しさん:2008/06/06(金) 19:17:55
うん "6/6" だけですむ標準が最高
633デフォルトの名無しさん:2008/06/06(金) 23:38:32
InputBox()関数の返値をどうにかして日付にしないといけないようなケースでは
>>627の方法一択だろうけど、テキストボックス使うなら入力規則を入力規則ウィザードで
それっぽいのに設定して書式をYY/MM/DDにしとくのが一番面倒がなくていいよ。

あとYYMMDD形式で入力させてると290101は2029年1月1日になるけど
300101は1930年1月1日と見なされる、いわゆる2030年問題があることも
一応憶えておくといいよ。
634デフォルトの名無しさん:2008/06/10(火) 05:36:31
パスワードついたExcelファイル(拡張子.xlsx)を
Access2007でリンク貼ろうと思ったら無理とか言われる。
VBAで無理矢理リンク貼れる?
インポートでも別にいいけど無駄だし。
635デフォルトの名無しさん:2008/06/10(火) 15:25:48

なあ、accessってホモっぽいと言ってるやつがいたんだが・・・
お前らどう思う?

access
http://www.access-web.jp/




636デフォルトの名無しさん:2008/06/12(木) 21:30:20
それよりこのスレいつDat落ちするかの方が気になるよ
637デフォルトの名無しさん:2008/06/12(木) 22:11:54
ACCESS2007のVBAってまだVB6ベースなのか?
てっきり.NETベースかと思ったよ。VB6関係の本、この前ぜんぶ捨てちゃったよ。。。
638デフォルトの名無しさん:2008/06/12(木) 22:24:45
.NET対応とかわれてもADOとADO.NETて共存させられんのかよ
639デフォルトの名無しさん:2008/06/12(木) 22:53:24
てゆうかADOとADO.NET違いが俺分かってないや
ちょっと誰か ドラえもんのような感じで説明してくれないか
スレ落ち防止も兼ねて
640デフォルトの名無しさん:2008/06/12(木) 23:32:30
過去の資産があるだろうから切り捨てはしなくていいけど、
言語エンジンの切り替えができるようにしてほしかった。共存とかはうまくよろしくみたいな。
641デフォルトの名無しさん:2008/06/13(金) 00:13:35
正直.NETはしなくてもいいけど、VBをやめてJScriptにしてほしい。VBまじ苦痛。
642デフォルトの名無しさん:2008/06/13(金) 02:00:29
それは時代の違いだな。昔はパソコンでプログラムといえばBASICがメジャーだった。
Windows95とVB4のころにはBASICの経験者が結構いたからな。
643デフォルトの名無しさん:2008/06/15(日) 19:32:13
アクセス本屋では人気あるのにP板ではにんきねえなあ
644デフォルトの名無しさん:2008/06/15(日) 19:32:33
おっと 保守
645デフォルトの名無しさん:2008/06/17(火) 22:16:31
わけのわからんエラーが多すぎるし、うまく多人数で使うのは至難の業だし
VBAは時代遅れの糞言語だし、唯一のとりえがレポート出力だけなのに
なんで人気でるのか
646デフォルトの名無しさん:2008/06/17(火) 22:23:11
間違ってもC言語が入門用になるなんて考えられんけどな。
647デフォルトの名無しさん:2008/06/17(火) 22:32:11
他人数で使おうって発想の人間には仮にエラーが出たとしても
わけわからんだろうな
648デフォルトの名無しさん:2008/06/17(火) 22:38:21
>>647
おまえな、マイクロソフトがそのような使い方を認めているのだから
そこを完全否定することはできないぞ。おまえがやりたくなくても
客の要望や他人の引継ぎでやらされることもあるんだぞ。
想像力の欠如だな。
649デフォルトの名無しさん:2008/06/17(火) 22:51:47
>>645
データベースとしては安いからだろ
客を説得するには十分な材料じゃね
650デフォルトの名無しさん:2008/06/20(金) 00:23:34
無料のSQLサーバ2005+ヴィジュアルスタジオ2008 VB C#
でつくりゃ無料じゃね?
レポートはどう出すか謎だが
救出アゲ
651デフォルトの名無しさん:2008/06/20(金) 00:46:43
そんなに必死になるほど人気がある実感はまったくないな。
652デフォルトの名無しさん:2008/06/20(金) 01:13:17
SQL-Server2008Expressまで待てばレポーティングツールもついてくるらしいよ
653デフォルトの名無しさん:2008/06/21(土) 15:47:39
>>652
いつまで待てば・・・・
654デフォルトの名無しさん:2008/06/22(日) 05:26:54
特定の日付のデータを取り出そうとしてるのですが

sql = "select * from 結果出力先 where [日付]<'" & Format(hi + 1, "yyyy/MM/dd") & "' and [日付]>='" & Format(hi, "yyyy/MM/dd") & "' ;"
Set rs = cnn.OpenRecordset(sql, dbOpenDynaset)
(hiは取り出したい日付を入れた変数)

ってやってるんですが、抽象条件でデータ型が一致しませんとエラーが出てしまいます。
どこがまずいんでしょうか?
655デフォルトの名無しさん:2008/06/22(日) 06:45:54
>>654
日付/時刻は「'」や「"」ではなく「#」で囲む
656デフォルトの名無しさん:2008/06/22(日) 08:31:20
礼に始まり礼に終わる
655 じゃないけど なんか言うことないのか?
657654:2008/06/22(日) 08:48:45
自己解決しました。
658デフォルトの名無しさん:2008/06/22(日) 08:57:50
655 の立場は?
659654:2008/06/22(日) 11:33:30
>>657は別人です。

>>655
上手くいきました。ありがとうございます。
660デフォルトの名無しさん:2008/06/22(日) 11:41:53
>>659
sql = "select * from 結果出力先 where [日付] BETWEEN #" & Format(hi, "yyyy/MM/dd") & "# AND #" & Format(hi + 1, "yyyy/MM/dd") & "# ;"

上の抽出条件のレベルだとその書き方でもいいけど範囲で抽出できるBETWEEN使った方が後から見たとき分かりやすくなると思うよ
661デフォルトの名無しさん:2008/06/22(日) 12:11:56
そもそも[日付]やhiに予期せず時分秒が入ってしまった場合に備えてWhere句を範囲にしてるなら
DateDiff("d",hi,[日付])=0のほうが見やすくていいよ。
662デフォルトの名無しさん:2008/06/22(日) 15:48:02
>>660
それだと翌日00:00:00のデータも含まれちゃうよ

>>661
hiはフィールドじゃなくてVBAの変数だから
sql = "select * from 結果出力先 where DateDiff(""d"", #" & Format(hi, "yyyy/MM/dd") & "# ,[日付])=0;"
かな?DateDiffの分すこしだけ重いクエリになるみたいだけど見やすさ優先ならいいのかも
663デフォルトの名無しさん:2008/06/22(日) 19:44:46
>>657

100点
664デフォルトの名無しさん:2008/06/26(木) 15:32:34
AccessってTransactionとかLockとかありますか
665デフォルトの名無しさん:2008/06/26(木) 16:47:43
DAOやADOにあるし、詳細オプションやクエリプロパティにもある。
制御可能な度合いはものによって違うけど。
666デフォルトの名無しさん:2008/06/26(木) 21:02:06
そもそもそれはなんだ?
667デフォルトの名無しさん:2008/06/26(木) 21:45:49
基本データベースに必要不可欠な機能だが
基本Accessに不要な機能です。
668デフォルトの名無しさん:2008/06/26(木) 22:47:05
スタンドアローンならロックはいらないけど、トランザクションはどんなRDBでも必須だろ。
データの不整合が起きたらどうするのよ。一部トランザクションがないエンジンもあるがな。
669デフォルトの名無しさん:2008/06/28(土) 08:33:05
不整合に気付けばいいけど
いつのまにか上書きされてて
だれも気付かない可能性大
670デフォルトの名無しさん:2008/06/28(土) 10:58:53
スタンドアローンなら自分以外に迷惑かからないし、
自分も気づかないなら何の問題も無い。
671デフォルトの名無しさん:2008/06/28(土) 11:04:24
自分で作って、自分で使って、自分だけしかそのシステムの情報を利用しないならOKだな
672デフォルトの名無しさん:2008/06/29(日) 02:14:26
自分だけしかそのシステムの情報を利用しないなら
トランザクション処理は不要なんですね
ほんとうにありがとうございました
673デフォルトの名無しさん:2008/07/02(水) 23:29:21
トランザクションの説明してくれ
排他制御との違いを語れと言いつつ
救出アゲ

674デフォルトの名無しさん:2008/07/03(木) 00:25:13
Tran The Cushion

ペアマッチで「イエス・ノー枕」を引いてしまいガックリな新婚さん。
ところがこのアイテムはハワイ旅行に化ける確率が高いのでちょっぴりワクワクな様子。
675デフォルトの名無しさん:2008/07/03(木) 02:03:20
>>673
はいた制御:歯科助手のおねいさんが制御してくれる・・・じゃなくてその名の通り他所からの干渉に対する制御
トランザクション制御:ファイヤーバードな制御・・・じゃなくて一連の処理の一貫性を確保するための制御

トランザクションに出来て排他に出来ない事は・・・一連の処理の途中でエラーが発生したときに処理開始前の状態を手軽に復元する事
676デフォルトの名無しさん:2008/07/05(土) 18:21:26
ファイヤーバードな制御<<ここのギャグが分からない
677デフォルトの名無しさん:2008/07/06(日) 14:23:56
>>676

トランザム・ファイヤーバードのことじゃね?
678デフォルトの名無しさん:2008/07/06(日) 15:30:12
InterBaseは関係なさそう
679デフォルトの名無しさん:2008/07/06(日) 23:00:18
トランザクションはオールオアナッシングでデータの整合性を保つ、言わば概念または目的だろ。
排他制御は具体的な手段。比較する次元が違う。
680デフォルトの名無しさん:2008/07/06(日) 23:50:01
それもなんかズレてる
681デフォルトの名無しさん:2008/07/07(月) 00:10:51
ズレてるか?

銀行の窓口で整理券発行する仕事と入出金後の残高を正確に記録する仕事、
同列で比較することがナンセンスって意見には俺は賛成だが。
682age:2008/07/08(火) 20:30:05
Access の結合って、等結合、左結合、直積、の3種類しかないのですか?
683デフォルトの名無しさん:2008/07/08(火) 20:45:57
どうでもいいが、2GBの制限があるんじゃテキストとか数値のデータだけでもすぐ容量オーバーしてしまうだろ?
実務ではどうやって運用してるんだ?
684デフォルトの名無しさん:2008/07/08(火) 21:00:45
鯖とリンク
685デフォルトの名無しさん:2008/07/08(火) 21:31:34
>>683
実務で使ってて、問題がないと思っているのか?
どんだけこの糞ソフトに苦しめられていることか・・・
686デフォルトの名無しさん:2008/07/08(火) 22:07:09
たとえば?
687デフォルトの名無しさん:2008/07/08(火) 22:16:29
>>682

 ・内部結合
 ・外部結合(左)
 ・外部結合(右)
 ・交差結合

この4パターン
688デフォルトの名無しさん:2008/07/08(火) 22:49:32
>>684
DBはOracleとかSQL Serverとかを使うのが一般的なのかな?
それだと、GUIをAccessで作る必要も無いような気がするが。
689デフォルトの名無しさん:2008/07/08(火) 22:52:27
ちなみに687の他にどんな結合があるんでしょうか?
690デフォルトの名無しさん:2008/07/09(水) 05:30:22
691デフォルトの名無しさん:2008/07/09(水) 11:48:52
>>688
Accessのフォーム以上に使い勝手のいいものってある?
DBはOracleとかSQL Serverで、フロントエンドはAccessってのも充分ありえるよ。


692デフォルトの名無しさん:2008/07/09(水) 12:24:33
>>691
exeファイルを作成できず、Accessが起動してしまうのが難点じゃないかな。
動作も結構重いし、データベースの最適化が必要なのも面倒。

Oracleなんかを使う場合には、フロントエンドはJAVAとか他の言語で作ることが
多いんじゃないのかな。
693デフォルトの名無しさん:2008/07/09(水) 19:40:04
Accessってめっさ軽いですけど
694デフォルトの名無しさん:2008/07/09(水) 20:20:17
>>691
VBAが糞。あの糞言語まじでぶっころす
695デフォルトの名無しさん:2008/07/09(水) 20:47:32
>>694
どの辺が糞なの?
君の理解力が糞なんじゃなくて?
696デフォルトの名無しさん:2008/07/09(水) 20:59:27
>>693
Cとかで実行ファイルを作るのに比べると相当重いんじゃないの?
697デフォルトの名無しさん:2008/07/09(水) 21:28:06
そうかなぁ
DBとPg一体になってる文
アドバンテージありそうだけど
698デフォルトの名無しさん:2008/07/09(水) 21:29:47
690 頭痛くなってきましたぁああ
699デフォルトの名無しさん:2008/07/09(水) 21:31:08
>>697
だからそのDBが2GBじゃ足りな過ぎるって話でしょ?
700デフォルトの名無しさん:2008/07/09(水) 22:03:56
MicroSoftがAccessユーザを.Netに移行させようとしているんだが、
.Netの仕様がどうしても受け入れられん。
EnterKeyでカーソルが次に移動するとか、ComboBoxに複数列を表示する等々、
あたりまえのことでいちいち躓いている。
あらためて、Accessの良さに気付かされる毎日だ。
701デフォルトの名無しさん:2008/07/10(木) 07:06:01
作る側からするとAccessは無いわ。
使う側からするとAccessは有るわ。

使うことで効率を上げることがEUの仕事だからAccessでお願いといわれればそうする。
手直し作り直し、果てはデータ肥大化でのDBMS移行で金ぶんどるけどさ。
702デフォルトの名無しさん:2008/07/10(木) 07:33:46
>>696
え、DBのフロントエンドをCで?よりによって?
う、うん、きっと軽いプログラムがつくれるよ。がんばってね!
703デフォルトの名無しさん:2008/07/10(木) 07:42:13
>>702
いやCはよく分からんのだけど、昔はVBなんかでフロントエンドを作った方が軽かったけどな。
フォームなんかの自由度はAccessの方が高かったが、実行ファイルが作れないことと、使うたびに
DBが肥大化するのが難点だったな。
704デフォルトの名無しさん:2008/07/10(木) 10:41:17
>>702
VC++なんかはOracleのフロントエンドとして普通に使われているみたいだけどな。
そういうのがAccessより軽いのは間違いないし、AccessはDBMSのフロントエンドとして
主流とはいえないんじゃないの?
705デフォルトの名無しさん:2008/07/10(木) 18:21:56
CとC++の区別もつかないド素人は黙ってた方がいいんじゃないの
誰もAccessが主流とか言ってないし
706デフォルトの名無しさん:2008/07/10(木) 18:27:37
C++でもオラクルのフロントエンドでは主流じゃなかったけどな
オラクルを使うような業務系のシステムではVBが主流だった
707デフォルトの名無しさん:2008/07/10(木) 18:48:33
>>705
あの...VC++はCのコンパイラやデバッガも含むんだけど...
C++とVC++の区別もつかないド素人に偉そうに言われても困るなw
708デフォルトの名無しさん:2008/07/10(木) 19:56:22
OracleといえばJavaなんですが
709デフォルトの名無しさん:2008/07/10(木) 20:40:58
Javaから始めた若者きてるな。
今でもクライアントアプリでJAVAはどうかと思うが。
710デフォルトの名無しさん:2008/07/10(木) 22:11:28
N86BASICからはじめた漏れは、BASICが最高に思えてしまふ。
711デフォルトの名無しさん:2008/07/11(金) 07:08:30
そんなモノは無い!!!
712デフォルトの名無しさん:2008/07/11(金) 20:18:17
JavaってAccessより軽いのか
713デフォルトの名無しさん:2008/07/12(土) 01:14:55
>>687
ありがとうございます。
ちなみに、右外部結合は、SQLビューアでサポートされてますか?
経験の少ない私からすると、無理やり、デザインビューで左外部結合を
するよう、促すようにに思えてしまうのですが・・・。
714デフォルトの名無しさん:2008/07/14(月) 17:32:04
>>700
Enter移動が当たり前とか.NET以前の話だぞ
715デフォルトの名無しさん:2008/07/15(火) 22:21:37
だからその.Net以前の仕様に慣らされたエンドユーザーの要望をどうするかって話だろ
716デフォルトの名無しさん:2008/07/15(火) 23:34:24
そんなのリターン押したら次のコントロールにフォーカス移すだけやん。何がむずい
717デフォルトの名無しさん:2008/07/16(水) 05:43:00
IME周りじゃね?
718デフォルトの名無しさん:2008/07/17(木) 14:16:36
>>715
>>700が挙げてる仕様って.NETの仕様じゃないじゃん
719デフォルトの名無しさん:2008/07/18(金) 10:04:21
アク禁やっととれた!

エンターで遷移するってことは、ボタンにフォーカスが移ったときどうするの?
10年以上前、それでどうしようもなくてお客さんに「Windowsでの遷移はタブでないとだめなんです」って説明してなれてもらった。
当時はオフコンの名残があってエンターで遷移が基本だったからね。ファンクションキーで決定。
720デフォルトの名無しさん:2008/07/18(金) 10:17:54
タブ移動だと、両手を使わなきゃならないから、作業効率が悪くなる。
右手だけで操作できるほうがいいにきまっている。
721デフォルトの名無しさん:2008/07/18(金) 10:24:09
それはいいけど、ボタンにフォーカスがあたったときどうするの?
エンターで遷移じゃボタン押せないじゃん。スペースキーで決定とか?
722デフォルトの名無しさん:2008/07/18(金) 13:05:54
基本的にコマンドボタンはタブ移動プロパティOFFにしとくだろ・・・

エンター何回押そうとボタンにフォーカスが移ることはないようにしとく。
あるいは流れるような入力の最後にだけ決定ボタンに移動して
その時だけは押されるようにするとか。
723デフォルトの名無しさん:2008/07/18(金) 17:50:51
ボタンにタブで移動できないとかマジ最低、ありえない
724デフォルトの名無しさん:2008/07/18(金) 17:53:39
キーボードでボタンに遷移しなかったら結局マウス使うじゃん。マウスは右手だからOKなのか?
作業効率のためにキーボードオンリーで操作できるようにしてるのに、そっちの方がはるかに意味がないだろ。
最後に遷移する方法だって、決定ボタンだけならともかく普通キャンセルボタンもあるし、
一度ボタンにフォーカスがあたったらキーボードだけでフォーカスをはずすことはできないことになる。
しかも遷移とボタン押下を同じエンターキーにすると、勢いでボタンを押下したりしがち。
仕様的にも摩訶不思議になるからユーザーが覚えづらいし、操作の矛盾が出て変なルールが増える可能性も大きい。
こんな問題が今でも議論の対象になるとは。無理な仕様の積み重ねはデスマーチの元なのだが。
725デフォルトの名無しさん:2008/07/18(金) 17:59:08
そりゃキャンセルボタンも用意するけど頻度的に稀な機能はマウス押下オンリーでも
別に円滑な入力を阻害するものじゃないだろ。

こんな問題が今でも議論の対象になるとは。
726デフォルトの名無しさん:2008/07/18(金) 18:03:49
>>724
.Netの仕様は知らないが少なくともAccessのフォームは
ボタンのフォーカスを←→キーで前後のコントロールに動かせる。
727デフォルトの名無しさん:2008/07/18(金) 18:20:28
>>726
>>722が言うようにタブストップをFalseにするとカーソルキーも効かないから
728デフォルトの名無しさん:2008/07/18(金) 18:39:09
このコントロールはエンター、
このコントロールはカーソルキーで移動してくださいってどんな泥沼システムだよ。
729デフォルトの名無しさん:2008/07/18(金) 18:47:45
>>727
タブストップ=Trueで移動してきた決定ボタンのことを言ってるつもりだったんだが
730デフォルトの名無しさん:2008/07/18(金) 19:00:41
>>728
テキストボックスとコマンドボタンは機能が違うことは誰でもわかるから、操作が違っていても違和感は与えないよ。
731デフォルトの名無しさん:2008/07/18(金) 19:07:37
>>729
ああ>>724
>一度ボタンにフォーカスがあたったらキーボードだけでフォーカスをはずすことはできないことになる。
これに対してね、なるほど
タブキーでも外せるよね
732デフォルトの名無しさん:2008/07/18(金) 19:21:18
中途半端にWindowsライクな操作性にされるとストレスがたまる。
コマンドボタンを排除して昔ながらのファンクションキー操作に戻れば万事解決。
733デフォルトの名無しさん:2008/07/18(金) 20:25:20
>>730
普通のユーザーは混乱すると思うけど
734デフォルトの名無しさん:2008/07/18(金) 21:23:26
>>731
結局タブキーかよw
735デフォルトの名無しさん:2008/07/18(金) 23:53:16
>>733
Windows自体がボタンにフォーカスがある時にエンターキー押下でクリックと同じ動作だから、
普通のユーザーはボタンで混乱しないと思う。

自分の経験から言えば、初心者はテキストボックスの移動をエンターキーではやらずに、マウスで選択移動する。
エンターキーでの移動を実演すると感心される、同様にカーソルキーでのボタンのフォーカス移動も感心される。

タブキーを使うフォーカス移動を実際にしている人って自分以外で見たことが無いです。
736デフォルトの名無しさん:2008/07/19(土) 18:30:39
>>735
>タブキーを使うフォーカス移動を実際にしている人って自分以外で見たことが無いです。
ホストの世界から舞い戻ったゾンビには当たり前だのクラッカーですが?
737デフォルトの名無しさん:2008/07/19(土) 19:06:32
>>736
普通の人の話をしていると思っていたのだが?
738デフォルトの名無しさん:2008/07/19(土) 19:12:49
えてして皆自分は普通だと言い張るもの
739デフォルトの名無しさん:2008/07/19(土) 23:26:42
相手が初心者ならタブの遷移を教えてやれよ。まだ癖がついてないんだから。
ほかのWindowsソフトはほとんどそれが標準だしブラウザだって同じじゃん。
なんでほかで通用しないローカル操作を教えるのかわからん。ユーザーが気の毒すぎる。
740デフォルトの名無しさん:2008/07/20(日) 03:11:40
Tabキーに遷移機能が標準的に実装されているかどうかと
一般的なユーザーに標準的に使用されてるかどうかは全然別の話。

ユーザーが気の毒って観点からならエンター遷移を実現して欲しいという
ユーザーの要望を切り捨てて煩雑な両手入力を強制するシステムのほうが
よっぽどユーザーにとって気の毒な話だろうに。
741デフォルトの名無しさん:2008/07/20(日) 12:42:02
入力で片手しか使わないってことは、ほとんど数字の入力だけってこと?
742デフォルトの名無しさん:2008/07/20(日) 13:12:57
まあそういう要求はあるんだろ
タブキーが付いてるUSBテンキーとか売ってるもんな
743デフォルトの名無しさん:2008/07/20(日) 13:33:47
へ〜、そんなの売ってるのか。知らなかった。
744デフォルトの名無しさん:2008/07/20(日) 15:55:56
>>739
大量に伝票入力するような場合は、入力効率が重要なんだよ。
MS製品の中で、アクセスだけがEnter遷移を採用したのは
そういうニーズを無視できなかったからだろう。
745デフォルトの名無しさん:2008/07/20(日) 16:14:19
左手に伝票の束を100枚ぐらいを抱えながら、
右手でテンキーを叩いて一枚ずつひたすら入力するって業務を
毎日毎日行うシステムではタブキーで遷移とか絶対にありえんから。
746デフォルトの名無しさん:2008/07/20(日) 16:55:16
言いたいことは全面的に支持するが、
それこそそんなアプリをAccessで作るなんて絶対にありえんから。
747デフォルトの名無しさん:2008/07/20(日) 17:32:12
客は多いけど単価の安い仕事してる中小企業だとありそうな話
748デフォルトの名無しさん:2008/07/20(日) 17:33:40
ACCESSがエンターキーをサポートしてるのは、
昔ホストとかワークステーションとかオフコンとかの影響がまだ強かったからだろ。
今更変えても混乱するだろうし。

伝票の入力って数字だけじゃないぞ。勘定科目の選択とか摘要とかどうするんだよ。
摘要は必須じゃないけどな。会計のこと全然知らないだろ。
749デフォルトの名無しさん:2008/07/20(日) 18:19:19
勘定科目にはコードがついているから、文字入力することは無い。
摘要にしても、頻度の高いものはコード化する。
充分作りこまれたものほど、数字だけで入力できるようになっている。
750デフォルトの名無しさん:2008/07/20(日) 19:02:24
コード全部覚えるのか・・・
751デフォルトの名無しさん:2008/07/20(日) 19:07:39
毎日入力してりゃ嫌でも覚える
752デフォルトの名無しさん:2008/07/20(日) 19:18:36
昔は入力専門の仕事があってコード覚えてやってたけど、
そのやり方ならほとんどGUIいらないな
753デフォルトの名無しさん:2008/07/20(日) 21:00:55
インクリメンタルサーチ機能を使えば、コードを完全に覚えている必要は無い。
754デフォルトの名無しさん:2008/07/20(日) 23:15:19
インクリメンタルサーチじゃ科目名までは出てこないだろ。
それは最後の数文字分の入力が少し省力化できるだけであって、
結局のところどのコードがどの科目か覚えてないと、最初の数字の
入力からアウトじゃないのか。
755デフォルトの名無しさん:2008/07/21(月) 00:13:53
頻度のばらけ方にもよるよ。

仮に100や200の内から1つを選択するコンボボックスだったとしても
全体の2割程度を覚えてしまえば全入力の8割は賄えるケースとかは普通にある。

よっぽどの馬鹿じゃなければ入力作業を毎日こなしていくうちに
覚える割合はどんどん上がるし、それにつれて作業の効率も飛躍的に上がっていく。

というか覚えれば覚えるほど作業がラクになるならそれがモチベーションになって
人間けっこう多くのことを覚えちゃうもんだよw
756デフォルトの名無しさん:2008/07/21(月) 02:54:54
http://www.vshopu.com/epson_BFKBPS2/index.html
こういうキーボードがあるぐらいだ
757デフォルトの名無しさん:2008/07/21(月) 08:18:11
高けえ〜。

tabキーがついてるテンキーがあるってことだったから、
Shift+tabキーとかあれば便利じゃないか?と思ったがこれにはついてるようだな。
おれが考えることなんてとっくに実現されているか。
758デフォルトの名無しさん:2008/07/21(月) 13:16:52
>>755
> 仮に100や200の内から1つを選択するコンボボックスだったとしても
こういう奴が動くけど使えないGUI作るんだよな〜
759デフォルトの名無しさん:2008/07/21(月) 13:52:31
>>758
だから「仮に」って言ってるだろうが。

テンキータブキーテンキータブキー操作が標準とか抜かしてる奴が
GUIの使える使えないを語るなよ。
760デフォルトの名無しさん:2008/07/21(月) 13:54:17
よく使うコードはメモ書きして液晶モニタの縁に張りまくってるからw
761デフォルトの名無しさん:2008/07/21(月) 14:37:20
>>759
おまえはパンチャー用キーボードなんて見たことも無いんだろうな...
762デフォルトの名無しさん:2008/07/21(月) 17:08:29
>>761
この話題は普通の企業が普通に購入するPCについてくるキーボード前提にしてくれよ。

そんなローカル仕様を標準として考えられたらどんな糞入力画面も
こういうキーボード用意すればアリって結論になっちゃうから…
763デフォルトの名無しさん:2008/07/21(月) 20:59:42
どんなキーボードを用意しようがマウス必須の糞入力画面は救えない
764デフォルトの名無しさん:2008/07/21(月) 21:17:18
三国志はテンキー入力で最強だった
765デフォルトの名無しさん:2008/07/21(月) 21:22:20
>>763
ようするにWebシステムは糞だと。
AJAXなんて消えてなくなれ。
766デフォルトの名無しさん:2008/07/21(月) 23:05:03
いっそのことExcelのセルにバシバシ入力しまくってCSVで一括レコード追加でよくないか?
Accessに限るならデータシートビューで直接打てばいいじゃん。
767デフォルトの名無しさん:2008/07/21(月) 23:39:13
コマンドプロンプトでいいだろ。
osql叩かせて、後は好きにしろや。
GUI開発するよりはるかに安く上がるし。
入力ミスったら自分で何とかしろ。
768デフォルトの名無しさん:2008/07/22(火) 00:01:33
Excelまで出していいならもう究極ツールの桐にするしかないだろ
769デフォルトの名無しさん:2008/07/22(火) 00:24:32
伝票をマークシートにでもしちゃえよ
770デフォルトの名無しさん:2008/07/22(火) 00:29:22
つ 鉛筆
771デフォルトの名無しさん:2008/07/22(火) 08:31:16
>>769
起票現場から総スカン食って終わりだな。
772デフォルトの名無しさん:2008/07/22(火) 10:03:24
マークシートなんて、試験以外では使わないだろ?
773デフォルトの名無しさん:2008/07/22(火) 12:20:53
バーコードでも使ってればインジャネ?
774デフォルトの名無しさん:2008/07/22(火) 12:22:57
周りにタブキーを使ってるやつがいないって、どんな弱小へたれIT企業でも考えられないのだが。
個人でやってるのか?
775デフォルトの名無しさん:2008/07/22(火) 20:50:07
>>773
コードは全然おkだが、
金額はどうするんだ?
776デフォルトの名無しさん:2008/07/22(火) 23:37:58
弱小へたれIT企業ほど技術力が皆無だから標準のタブキー遷移を
ユーザーに押し付けて楽しようとするよね
777デフォルトの名無しさん:2008/07/22(火) 23:44:34
標準化を推し進めて何が悪い
778デフォルトの名無しさん:2008/07/23(水) 00:01:41
エンターキーで遷移させるのが技術力の証なのか。それは楽でうらやましい。
ホストあがりで今はACCESSに特化してる個人とかのパターンだろうな。
Webシステム作らせたらセキュリティホールだらけになるんだろう。そもそも動くもの作れないだろうけど。
完全に時間が止まった自分の世界だけで生きてるわな。
779デフォルトの名無しさん:2008/07/23(水) 00:31:24
AccessのスレでWebシステム作らせたらどうなるかとか、もうね・・・
きっと憶えたてのLAMPとかで賢くなっちゃったつもりなんだろうなw
780デフォルトの名無しさん:2008/07/23(水) 01:15:11
俺ってこんなスゴイWebシステム作れるんだぜ〜系の自慢だったら
いっぱいあるWeb系の板やスレでやれって話だよなw

まああっちは本職だらけだから仕方なくこっち来てるんだろうけどw
781デフォルトの名無しさん:2008/07/23(水) 01:50:32
技術力を語るなら幅が狭いってことだろ。もうキリないからやめれ。
782デフォルトの名無しさん:2008/07/23(水) 05:23:18
ところで「遷移」ってこういうときに使うの一般的なの?
783デフォルトの名無しさん:2008/07/23(水) 19:35:10
画面遷移とか状態遷移は使うけど、カーソル遷移は使ったこと有りません。
ありがとうございました
784デフォルトの名無しさん:2008/07/23(水) 19:51:25
何かが移り変わるときじゃね
785デフォルトの名無しさん:2008/07/23(水) 20:20:48
移り変わるのはカーソルじゃなくてフォーカスじゃないか?
「タブ 遷移」とか「フォーカス 遷移」でぐぐると結構出てくるから使われてるとは思うが。
786デフォルトの名無しさん:2008/07/23(水) 23:50:02
フォーカスの遷移か、言われてみればそんな感じも
787デフォルトの名無しさん:2008/07/24(木) 00:51:21
時代…かな。
788デフォルトの名無しさん:2008/07/24(木) 08:40:52
今はこ〜んな〜に悲しくて 涙も〜かれ〜果て〜て♪
789デフォルトの名無しさん:2008/07/26(土) 01:00:36
そこで紙パンチの登場ですね
わかります
790デフォルトの名無しさん:2008/08/08(金) 04:05:20
Access2003 JET4.0 MDAC2.9 Office2003SP3の正しいインストール順序を教えて下さい
791デフォルトの名無しさん:2008/08/14(木) 12:36:41
Access2007を使っているんですが、
どう設定したのか、新規作成時にユーザー名とパスワードをきかれる
状態になってしまいました。
Officeを入れなおさず、初期の状態(ユーザー名、パスワードなし)に
直す方法を知っている方、いらっしゃいませんでしょうか?

792デフォルトの名無しさん:2008/08/14(木) 16:22:07
>>790
Access2003
Office2003SP3
MDAC2.8SP1
JET4.0
793デフォルトの名無しさん:2008/08/15(金) 02:16:59
>>791
何を新規に作成するときなの?
794デフォルトの名無しさん:2008/08/19(火) 18:34:01
VBAで自ファイル内のテーブルにアクセスするにはどうすればいいの?
ADOやDAOだとロック?されてるみたいでOpenに失敗するんだが
795デフォルトの名無しさん:2008/08/19(火) 19:14:55
ふつうにCurrentProject.Connectionでopenできないとしたら俺は2chやめる
796デフォルトの名無しさん:2008/08/19(火) 19:19:07
>>795
thx!~
797795:2008/08/19(火) 19:30:17
ああそうだ、質問するの忘れてた
テーブルにOLEオブジェクト型ってあるじゃない
あれにbmpファイルが入ってるとする(そりゃもう悪魔のようなサイズ)

あれをbmpファイルとしてどこかのフォルダーに保存するのってどうやるんだろ
逆に外にあるbmpファイルをテーブルに保存するやり方もよくわからん

テーブルどうしてならインサートでもレコードセットオープンでもやり取りできるんだが
外とのやり取りの仕方がなんとも
798デフォルトの名無しさん:2008/08/19(火) 23:18:58
OLEオブジェクトではなく本当にBMP自体が入ってるなら、
ふつうにbinaryモードでOpenステートメント使え。
799デフォルトの名無しさん:2008/08/20(水) 09:18:33
800デフォルトの名無しさん:2008/08/21(木) 19:35:06
>>798
>>799
vthx

つかごめん
何か俺、バイナリについての理解が全然たりてない
とりあえずやってみたらデータとファイルのやり取りはできたんだけど
あれ、違うんだわ

直連結のフォームで画像表示できる形
テーブル上で直にクリックしても開ける形
ついでにいうと、テーブル上で右クリこぴーしてどこかに貼り付けると
「スクラップ」とかいうふざけた名前のファイルになって
それでもビットマップとして開ける形
なのよ、ほしかったのは

当面の問題はまったく違う方向から無理やり解決したけど
まだまだ勉強がたりないなと
801デフォルトの名無しさん:2008/08/21(木) 19:46:05
>>800
いや、みんなわざと「OLE」をスルーしてるだけだよ。

BMPがどんなアプリにリンクされてるかで内部データは異なるし、
アプリの汎用的な操作法なんて知ったこっちゃないからね。
802デフォルトの名無しさん:2008/10/25(土) 16:28:50
hoshuってみたり、とか
803デフォルトの名無しさん:2008/10/25(土) 18:59:44
すみません、質問です。

Accessに登録されているテーブルの設計情報をExcelなどで
ドキュメント化することは簡単には出来ないのでしょうか。
イメージ的には、テーブルのデザインビューを開いてそれを
すべて選択してコピーしてExcel開いて貼り付けるという
ものですが。(この操作が出来ませんので悩んでいます)

かなり過疎っているようですが、お願いします。
804デフォルトの名無しさん:2008/10/25(土) 21:36:21
ADOXでテーブル情報取得してExcelに書き込めばいいんじゃね
Accessからやっても良いしExcelからやっても良い
805デフォルトの名無しさん:2008/10/26(日) 00:03:37
>>803
YU-TANG's - チャンネル D アドイン - コピペをもっと便利に
ttp://www.f3.dion.ne.jp/~element/msaccess/AcAddinChannelD.html
806デフォルトの名無しさん:2008/10/26(日) 20:03:04
>>804
ありがとうございます。その案がありましたね。

>>805
このツール良いですね。目的の結果ではありませんが、これを使うと
データ移行などが容易に出来そうですありがとうございます。
807デフォルトの名無しさん:2008/10/27(月) 15:58:41
こんにちは。
MDBファイルにパスワード掛かっているのですが
パスワードを解除するソフト探しています。
自分なりに調べて
Access Password Recovery Master
なるソフトを見つけましたがシェアウェアな為
解析できるか不明です。
この手のソフトウェアでなにかお勧めのソフトウェア教えてください。

Access2003でMDBファイルです。
808デフォルトの名無しさん:2008/10/27(月) 16:07:04
>>807
パスワード掛けた人に聞けばー?
809デフォルトの名無しさん:2008/10/27(月) 16:30:25
簡単に解けちゃったらパスワードの意味が無いわけなんだけど。
そのソフトもどうせ総当りしてるだけ(=長いのは無理)なんじゃないの?
810807:2008/10/27(月) 18:35:07
アクセスのパスワード管理ってあんまりよくわからないですが
パスワード20桁で英数字で掛けたんです。
MDBファイルは簡単に破れるようなことネットで見かけたので本当に破れるかどうか
試そうかとおもって・・
シェアウェアで20ドル近くするのでその為に買うのもどうよ?
ってことでした。

総当りならいいんですが10年ほど前のAccessで簡単に破れた記憶があったので
811デフォルトの名無しさん:2008/10/27(月) 21:31:18
総当りはやめとけ
255回間違えたらPCが爆発するぞ
812デフォルトの名無しさん:2008/10/27(月) 21:38:48
桁数と使用した文字が分かってるなら総当りでやってみれば。
813807:2008/10/28(火) 10:27:18
すいません。言葉足らずで
パスワードは自分で掛けたのでわかってます。
ネットで出回ってるソフトで簡単に破れるかどうか試そうと
おもったんです。

結局、入っているデータフィールドの中の一箇所を
暗号化することで落ち着きそうです。
MDBファイルの中身をど〜しても抜かれたくないみたいで
もしパスワード破られたら・・・ とか言い始めたので
もうだったら、フィールドの一部分暗号化しましょって
ことになりました。

・・・ ここまで作らせといてまたそれかっ!って
感じでとてもめんどくさいです。
814デフォルトの名無しさん:2008/10/28(火) 21:15:38
もし暗号化を破られたらどうするんだ
815デフォルトの名無しさん:2008/10/29(水) 00:02:15
よしじゃあパスワードかけたmdbをうpしてみろ
816デフォルトの名無しさん:2008/10/29(水) 06:27:50
クラッキングの質問はNGなのでは。
まあ、俺もExcelにかけたパスワード忘れて悶絶することたまにあるけどさw
817デフォルトの名無しさん:2008/10/29(水) 12:02:27
>>807
ADOでアクセスすれば
818807:2008/10/29(水) 15:51:34
結局
フィールドの文字列をフリーソフトで暗号化しました。
DLLでネット提供されていたDES+ BASE64 の物です。
おかげで結構簡単に暗号化できたのですが
ボタンクリックしてSQLを発行して帰ってきて
グリッドに表示されるまでの速度が10倍以上おそくなりました。
クリックして5秒くらい返ってきません。
いまさら、構造とか改善なんてできないんでこのまま使って
もらおうと思います。頻繁にアクセスするソフトじゃないのでいいかなって
感じです。

いろいろすいませんでした。
819デフォルトの名無しさん:2008/11/13(木) 10:53:36
ACCESS2003(WindowsXP)でImgEdit.ocxが組み込めません。
元はACCESS2000で作ってあるMDBを2003で読んだのですが
画像を表示するフォームでエラーになりました。
参照設定は直したのですが
「オブジェクトはこのプロパティまたはメソッドを
 サポートしていません」と言われました。
OCXを追加で登録しようとしたら
「○○○○.ocxを追加または削除できませんでした
 別のセットアッププログラムを使って、コントロールの
 追加または削除を行ってください」というエラーで。
レジストリの問題かと思って「regsvr32」で該当の
ocxを指定したら
「Load Library(○○○○.ocx)に失敗しました -
指定されたモジュールが見つかりません」
とダメだしされました。
ocxファイルは、system32フォルダに登録されてます。

なにが原因か教えていただけないでしょうか。
 
820デフォルトの名無しさん:2008/11/13(木) 15:28:14
>>819
そのocxが依存してるものがないのでしょう。

ググって情報出ましたよ。
Win2kまでは標準で入ってたけどXPには入ってないKodak Imaging関係ですね。
どうもライセンス的によろしくない気がするのではっきりは書きません。
821デフォルトの名無しさん:2008/11/13(木) 15:43:51
>>820
昨日結構調べたんですが、わからなかったです orz
でも、XPにもあるって読んだ気がします。
ちなみに、XPマシンには特別にファイルをコピーしたり
してないです。元々あったocxファイルのはずなんです。

で「依存してるもの」ってのはアプリだったり
なんかのソフトウェアだったりってことでしょうか。

ライセンスでマズいってことは、ファイルをどっかから
持ってきてる可能性があるってことですよね。
う〜ん、systemフォルダにあったのはなぜだろう。

もうちょっと調べます。ありがとうございました。
822デフォルトの名無しさん:2008/11/13(木) 15:47:25
>>820 追記

ありがとう。Microsoftのページが見つかりました。
823デフォルトの名無しさん:2008/11/14(金) 13:13:52
既出かもしれないけど、Access 2003のmdbを2007で開くと、とてつもなく
遅い場合があるのな。何事かと思った。
で、メールリクエストが必要なHotfix当てると普通に動くようになる。
http://support.microsoft.com/default.aspx/kb/956054

他にもヤバげなHotfixが山盛り。
http://allenbrowne.com/Access2007.html

久しぶりにVBAのメンテしたけど、相変わらずというか、以前に増して
状況は悪化している気がする。
SP2まで放置していいようなバグじゃないよ。
なんかもうAccessとかVBAとか使いたくないね。
824デフォルトの名無しさん:2008/11/15(土) 00:45:52
だったら桐にしとけやカスが
825デフォルトの名無しさん:2008/11/15(土) 16:05:08
初心者向けでない、VBとかWSH程度の情報はほどよく省略してくれている、
簡潔なAccessVBAのリファレンス本があれば便利だと思っているんですけど、
皆さんはどうされていますか?

・Excelはソフトの自身のヘルプは使いやすいんですが、
Accessのヘルプは非常に見づらいし、結局知りたいことが書いていなかったりすることが多すぎる。

・超図解 AccessVBAハンドブック
http://www.amazon.co.jp/exec/obidos/ASIN/4872833635/
これなんかいい感じですが、
絶版で人気があるのか中古3500円ですが、そこまで出す類の本ではないと思う。

・Access 2003 Vba Programmer's Reference (Programmer to Programmer) 出版社: Wrox
http://www.amazon.co.jp/exec/obidos/ASIN/0764559036/
こういうレベルの本が少ないので貴重ですけど、
リファレンスとしては984ページなので使えない。
826デフォルトの名無しさん:2008/12/07(日) 19:03:55
AccessVBAのスレを探したけど見つからなかったのでここで質問。

よくサブフォームをダブルクリックしてフォームに表示させるっていうのをよく見かけるけど、
あれってサブフォームのテキスト毎にダブルクリックの指定しないといけないの?

2つ3つならともかく、項目がたくさんあるといちいち指定するのがマンドクセって感じになるので
手間が省ける手段があるなら使用したいと思いまして・・・
827デフォルトの名無しさん:2008/12/11(木) 23:20:49
828デフォルトの名無しさん:2009/01/04(日) 00:06:59
箱の開け方が分かりません。
Accessのバージョンは2007です。
そしてアップグレード版です。
どうやるんですか。
829デフォルトの名無しさん:2009/01/05(月) 10:28:37
830デフォルトの名無しさん:2009/01/06(火) 23:33:17
MS良く使ってるあのケースは開けづらいけど
未開封ならテープ引っ張れば開いたような
831デフォルトの名無しさん:2009/01/07(水) 01:41:51
動物園のチンパンジーに渡せば開封してくれるはず。
832デフォルトの名無しさん:2009/01/07(水) 05:00:12
しかし、頭が良すぎるのもなんだな…
適度に社会制度や体制の奴隷になれないと生きにくい世の中なんだよ
『カッコーの巣の上で』は何も精神病院を描いただけじゃない
精神病院を舞台に現実社会を皮肉ってるんだよ

一人が正しくても周りが全員間違ってればその一人は基地害扱いされる
それが社会なんだよね〜
833デフォルトの名無しさん:2009/01/13(火) 00:48:35
質問です。分かる方どなたか教えてください

Access2003でSQLServerにアクセスするパススルークエリを作成しました。
その後、作成したパススルークエリを実行するとテーブル項目に
「Admin - 00」という名前でテーブルが作成され、その中に
「右側のデータが切り取られました」といったメッセージが格納されてしまいます。
ちなみにクエリ対象のテーブルはtext型のフィールドを持っていて、
それのせいだというのは分かっているのですが、そのフィールドをselectしない
わけにはいきません。

このようなエラーメッセージ(エラーテーブル)が作成されないように
するにはどうすればよいのでしょうか?
Logmessageプロパティの設定をちゃんとしてもエラーは出てしまいます。

834デフォルトの名無しさん:2009/01/15(木) 18:27:58
アクセス初心者です。
漢字で昇順にすると打った読み方でバラバラになるというのは理解しましたが、
これを直すには漢字を正しく打たなければ直らないのでしょうか?日本語でおkですみませんが宜しくお願いします。
835デフォルトの名無しさん:2009/01/15(木) 21:25:41
>>834
打った=キーボードで入力したひらがなのことでしょうか?

漢字の並び順は(打った読み方と関係なく)決まっていますので、
打ち直しても同じです。

読み方で並べたい場合は、並び替え用に「ふりがな」などの項目を作って入力し、
それを使って並び替える必要があります。
836デフォルトの名無しさん:2009/01/16(金) 02:07:21
>>835
親切にありがとうございます。
名前を漢字で入力して昇順に並べ変えようとしました。
例)阿部(あべ)
  伊藤(いとう)
  吉川(きちかわ)←ホントはよしかわ;;
  佐藤(さとう)
という風に間違って入りこみます。こういう場合はひらがなの項目を作ればいいのですね^^
837デフォルトの名無しさん:2009/01/16(金) 02:17:58
東(あづま)さんと東(ひがし)さんを別々に分けたければ
どっちみち漢字項目だけじゃ無理だろw
838デフォルトの名無しさん:2009/01/16(金) 21:49:57
クエリって簡単に言うと何ですか?無知ですみません
839デフォルトの名無しさん:2009/01/16(金) 21:54:24
或る者はキュウリと呼ぶ。
840デフォルトの名無しさん:2009/01/17(土) 09:50:40
SQLで書かれたデータ入出力プログラムのことでふ
841デフォルトの名無しさん:2009/01/21(水) 22:30:29
ACCESSの2000と2003は全くの別物?
842デフォルトの名無しさん:2009/01/22(木) 10:27:46
別物のわけない。2007は取っ付き辛かったが
慣れれば2007が一番いい。
843デフォルトの名無しさん:2009/01/25(日) 12:12:09
313 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/24(土) 17:19:53.45 ID:97CqafnI
特許庁のシステムとか、西武百貨店のシステムとか、三井リハウスのシステムとか
アクセス→SQLサーバー接続で作ったシステムです
それぞれ、プロが数千万円の報酬や助成金で作った、総額ん億円のシステムです
プログラム作成のお勉強見本としてドゾー

[殺人] Administrator(20081230-101522)のキンタマ.zip 2,263,376,860 09ed98f10653c3fc2555621ceeed6bc33e8f6228
[殺人] Administrator(20081230-101522)のメール.zip 59,426,579 4da9459b30eec31f58b86530dbb48d1cf86ef4be
[写真集][IV] Administrator(20081230-101522)のアルバム.zip 2,205,946,474 9d87cc0e08dc0e3afd959fcead6c48d569787cee

476 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/25(日) 12:02:20.71 ID:pNrDVo49
解析班のために岡ちゃんが流出させた上のファイル全部うpしとく
パスは 135 ね
解凍したら全部で6Gあるから注意してね ウイルス削除済み
(p)http://www.adrive.com/public/7d08fe24675fa758db8ab29ba4cae136e10a2d9958ce415d2f248de84871eb52.html
(p)http://www.adrive.com/public/a300a6e3cecf155dda7f8c1843a9280da156b41119f79d58644217407ad6652d.html
(p)http://www.adrive.com/public/002efa3ac3b17864e3839888a0de348b1c565c1f24f226e403086491af4adb71.html
(p)http://www.adrive.com/public/945451d37fe9b7c3e609f5915f7abf0c9afaa1d78149ede318b38ac1724a79bc.html
負荷分散のため分けた。
全部同時にDLすれば早いぞ1時間位 全部DLしてから解凍してくれ

拡張子.dbxは下のフリーソフト使えば見れるようになるよ
(p)http://www.asahi-net.or.jp/~tz2s-nsmr/soft/dbxview/ne03ws.htm
拡張子.mdbはエクセルで開ける 起動フォームでテーブルがブロックされるものは
シフトキー押しながら起動で解除してテーブル見る

中のファイルのパスは DD`(4Y  か test で だいたい開ける
それでもダメなら報告してね 皆で解析するからw
後、個人情報を悪用したらダメだよw解析用だけにつかってねw
844デフォルトの名無しさん:2009/02/01(日) 19:51:49
スレ違いかもしれないのですが、もし違っていたら誘導してください。
アクセス2000を使って顧客リストを作ろうと考えています。
本日の日付を自動入力したいのですが、下記のサイトが参考になり
規定値に =Now() と入力すればいいことがわかりました。
http://ziddy.japan.zdnet.com/qa1703777.html
ただ問題なのは、編集のたびに更新したその日付も自動入力してほしいのですが、
その方法がわかりません。
更新のたびの、その日の日時の自動入力方法を知っている方がいましたら
お手数ですがご教授いただければ助かります。よろしくお願いいたします。
845デフォルトの名無しさん:2009/02/01(日) 21:49:18
>>844
編集をクエリから行うか、フォームから行うか、プロシージャで行うかによってやり方が変わる。
更新クエリで行うつもりなら、更新日を入力するフィールドの「レコードの更新」にNow()を設定すればいいよ。
846844:2009/02/02(月) 00:17:15
>>845
なるほど。ありがとうございます。
更新はフォームでやるつもりだったのですが、とりあえずクリエでもやってみます。
847844:2009/02/02(月) 01:01:15
もしよければ、フォームでの更新の際のやり方も教えていただけないでしょうか?
848デフォルトの名無しさん:2009/02/02(月) 01:17:44
>>847
845 ではないが、フォームやるんだったら、
フォームの「更新前処理イベント」のイベントプロシージャのコードを開いて、

Private Sub Form_BeforeUpdate(Cancel As Integer)
 更新日時 = Now()
End Sub

とすれば良い。「更新日時」は更新したい日付の列名に変更してください。
849デフォルトの名無しさん:2009/02/03(火) 10:41:03
ACCESS2007 で、最適化をすると、ファイルがなくなることがあります。
どうも、ACCESSファイルを、エクスプローラ上で、選択したまま、
最適化すると、現象がでる見たいです。

自動最適化したい、と思ったんですが、
トラブルがでるようだと困るので、迷っています。

みなさんは、どうしてますか?
850デフォルトの名無しさん:2009/02/03(火) 14:00:57
>>849
Access 2007 の有名なバグ。
最適化時にデータベースファイルが読み取り専用状態の場合にデータベースも一緒に削除される。

対処方法は下のどちらか

・下の Hotfix を自己責任でダウンロードして当てる
Description of the Office Access 2007 hotfix package: April 16, 2008
http://support.microsoft.com/?scid=kb%3Ben-us%3B950812&x=10&y=6
ダウンロードはページの最初にある View and request hotfix downloads をクリック

・使用するときはショートカットを利用するなどして極力ファイルを読み取り専用状態にさせない。
その上で、もうじきリリース予定のサービスパック2を待つ
(上の Hotfix はサービスパック2に入ることが決定済み)。
851デフォルトの名無しさん:2009/02/03(火) 14:22:05
>>850

ありがとうございます。
大変参考になりました。

それにしても、恐ろしいバグですね。。
852デフォルトの名無しさん:2009/02/03(火) 21:10:30
これは確かに恐ろしい…
853デフォルトの名無しさん:2009/02/10(火) 10:25:21
すみません、教えていただきたいのですが

Access2003を使用しています。

Excelにあるプロパティで Application.Interactiveに相当するものはAccessにありますでしょうか?

やりたいことは、あるプログラム(マウス操作)中はユーザー操作によるマウス入力を受け付けないように
したいのですが、なにか方法ありますか?

よろしくお願いします。
854デフォルトの名無しさん:2009/02/10(火) 22:05:52
>>853

マウスカーソルの砂時計とは、違いますよね。

無限ループしてる時は、処理を受け付けなくなっちゃいますね。

作業用のフォームをポップアップして、
アプリケーションからの制御が戻るのを待つ、
見たいなのでは、どうでしょう?
855863:2009/02/12(木) 16:31:14
>>854
実はAccessのVBAでAPIを使って、他の別アプリを操作しているんです。
別アプリはファイルシステムで、だいぶ前に開発されたものでして
中身がブラックボックス化されてるんです。

移行途中でどうしてもそのアプリを操作しながらDBと連携とるのですが
それをAccessのVBA経由のAPI操作してるんですが、途中でマウスの操作を
されると誤動作するんです。

ですから、一部のプログラムが動いている間は、完全にハードウエアのマウス操作を
遮断したいのです・・・・
856デフォルトの名無しさん:2009/02/12(木) 17:52:51
>>855

Run で、Wait できますよね。

Access から、Run で、AP を起動して、その終了を待つのではどうでしょう?
857デフォルトの名無しさん:2009/02/12(木) 17:55:48
>>856

> Run で、Wait できますよね。

補足です。

(WScript の、Run)
Dim objWShell
Set objWShell = CreateObject("WScript.Shell")
objWShell.Run "xxxx.exe", vbNormalFocus, True
858863:2009/02/12(木) 18:11:30
>>856-857
ありがとうございます

早速テストしてみます。
859デフォルトの名無しさん:2009/02/13(金) 19:00:21
AccessのVBAがマウスを操作する、その間ユーザのマウス操作を無視したい  ってこと?
ならそれはApplication.Interactiveみたいなものじゃないですよね。
Application.Interactiveは、そのExcelがキー操作・マウス操作を受け付けないようになるもの。

Windows全体に対してユーザのマウス操作を無視させるってどうするんだろ。
マウスドライバを一時的に無効にするとか、そういう話になっちゃうんじゃないかなぁ。

ちょっとくらいマウスを動かされてもまぁ大丈夫なように操作する、という方向の方が楽だと思いますよ。
860863:2009/02/17(火) 12:23:46
>>859

>ちょっとくらいマウスを動かされてもまぁ大丈夫なように操作する、という方向の方が楽だと思いますよ。
それは重々理解しているつもりで作ってるんですが・・・
一日に10回程度動くアプリで、月に2回ほどマウスの誤動作でエラーが起きてるので・・・

なんとか自作でDllを作ってハードウエア入力を解除指定があるまでロックするようにするつもりです。。。
ExcelのApplication.Interactiveみたいのがあればすごく便利なんだけどな、と軽く思ってたんです
861デフォルトの名無しさん:2009/02/19(木) 10:59:09
> 自作でDllを作って

> http://www.atmarkit.co.jp/fdotnet/vblab/vb2005m_12/vb2005m_12_03.html

ちょっと、処理系は違うかもしれませんが。↑こんな感じでいけませんか?

マウスのキャプチャであれば、難しくても、直接APIを触るレベルで、
DLL まで作らなくてもなんとかなるんじゃないでしょうか?

どうでしょう?
862デフォルトの名無しさん:2009/02/20(金) 16:16:24
>>861
マウスキャプチャってどういうものなのか知ってますか?
863デフォルトの名無しさん:2009/02/21(土) 08:51:51
>>862

キャプチャを実行すると、以降のマウスイベントが、
実行したウィンドウのみに、送られてくる、
というものだと理解しています。

なので、他のウィンドウにマウスイベントが流れない。
=他のウィンドウでは、マウスを操作したことにならない。

で、自分で、マウスイベントを握りつぶせばどうかな、と思ったんですが。

どうしょう?
864デフォルトの名無しさん:2009/02/24(火) 18:09:14
access2000-2003
で質問です。

アクセスのレポートをプレビュー表示したときに強制的に最終ページへ移動させる方法はないでしょうか?
(最終ページへ移動 ▲| のようなボタンを押したことにしたい)

現在
1.集計
2.レポートの表示

を行っています。
また、2の処理の後にレポートのPagesを調べてみると0になっていました。

よろしくお願いいたします。
865デフォルトの名無しさん:2009/02/24(火) 20:07:59
単に最終ページへ移動したいだけなら、
ttp://www.accessclub.jp/bbs2/0030/beginter09819.html

何のために最終ページを表示したいのかによっては、こっちも参考になるかも。
ttp://www.accessclub.jp/bbs3/0081/superbeg29760.html

PagesはReport_Pageイベント内で調べた?
2003で試してみたところ、Report_Openイベント内では0になるね…。なぜだかはわからない。
あと、フォーム上に[=Pages]をコントロールソースに持つテキストボックスがないとダメみたい。
866デフォルトの名無しさん:2009/02/24(火) 21:08:10
>>865
情報サンクスです!
参考に試してみます。
867デフォルトの名無しさん:2009/02/28(土) 15:02:16
Accessで作ったコンボボックスでGoogle検索みたいな(インクリメンタルサーチ??)事はできるのでしょうか?

・テーブルに「会社名」「カタカナ」を作成。
・フォームにコンボボックスを作成。

1.コンボボックスに「あ」と入力。
    「あ」の下に....があり文字は未確定。
2.1.の状態で「あ」を含む「会社名」がドロップダウンする。
3.「あ」の次に「い」を入力(「あい」の下に....があり文字は未確定)すると「あい」を含む「会社名」がドロップダウンにリストアップされる。
4.ドロップダウンから選択する。
5.「会社名」確定。

文字を確定する方法ではなんとか出来たのですが、
「文字未確定」って所で頭を抱えています。
868デフォルトの名無しさん:2009/02/28(土) 19:18:41
keyupイベントでコンボボックスのtextを拾ったらどうだろう?
869デフォルトの名無しさん:2009/02/28(土) 23:13:34
http://www.activebasic.com/help_center/Pages/Concept/Window/Message/CB_FINDSTRING.htm

最悪でも、CB_FINDSTRING.を、SendMessage すれば、できそうに思いますが、
もっと、簡単な方法があって欲しいですよね。
870デフォルトの名無しさん:2009/03/09(月) 10:07:01
ボタンの表示名、「はい」「いいえ」「キャンセル」の文字を任意に変えることはできますか?
871デフォルトの名無しさん:2009/03/09(月) 22:07:45
メッセージボックスのボタンのこと?
ここが見やすいからどうぞ。
ttp://www.accessclub.jp/samplefile/help/help_48_1.htm
872デフォルトの名無しさん:2009/03/12(木) 17:32:10
本やサイトでは、必ずと言って良いほど、上で書かれていますが、
レコードセットを使う上で、以下の差は何か異なりますか?

[1]
Dim mdb As DAO.Database
Dim rs As DAO.Recordset

Set db = CurrentDb
set rs = db.OpenRecordset(ほげほげ)



[2]
Dim rs As DAO.Recordset
set rs = CurrentDb.OpenRecordset(ほげほげ)
873デフォルトの名無しさん:2009/03/14(土) 17:20:46
MS Access質問です
コマンドボタンクリック時の逆三角ボタンを押すと イベント プロシージャと
マクロの名前が出ますがここに自分で作成した
プログラムを出すにはどうすればいいのでしょうか?
874デフォルトの名無しさん:2009/03/14(土) 17:36:12
イベントプロシージャを選択して、右に出る「...」ってのをクリックして
その中でプログラムを呼び出す。

Private Sub コマンドボタン名_Click()
 call プログラム名
End Sub
875デフォルトの名無しさん:2009/03/14(土) 18:08:04
>>874
逆三角形を押すと

****************
イベントプロシージャ
マクロ1
マクロ2
プログラム名
****************
こんな感じに出したいのですが・・・
876デフォルトの名無しさん:2009/03/14(土) 19:03:57
マクロ3を作って、マクロ名を "プログラム名" にする
877デフォルトの名無しさん:2009/03/14(土) 20:00:35
イベントプロシージャで自作のプログラム呼べばいいじゃん
878デフォルトの名無しさん:2009/03/14(土) 23:16:22
いやぁ
そんなことできたかな?と勘違いみたいでしたぁ
すいません^^;
879デフォルトの名無しさん:2009/03/14(土) 23:48:33
質問です
よろしくお願いします
ActiveXコントロール のテキストボックスと
普通のテキストボックス大きな違いはなんでしょうか?
又、ActiveXコントロール利用時の注意点はありますか?
880デフォルトの名無しさん:2009/03/15(日) 11:09:07
Accessのクラスモジュール一般的な使い方教えてプリーズ!!
881デフォルトの名無しさん:2009/03/15(日) 18:39:48
>>880
フォームモジュール
882デフォルトの名無しさん:2009/03/15(日) 20:33:05
>>881

ぐぐりましたが・・・
今ひとつマイナー感が・・・
サンプル見せてプリーズ!
883デフォルトの名無しさん:2009/03/15(日) 21:34:58
Microsoft Access には、標準モジュール
(標準モジュール : Access のモジュールの 1 つ。標準モジュールの Sub プロシージャや Function プロシージャは、データベース内の他のすべてのプロシージャから呼び出すことができます。)
およびクラス モジュール
(クラス モジュール : 新規オブジェクトの定義が含まれるモジュールのこと。クラスの新規インスタンスを作成すると、新規オブジェクトが作成されます。モジュールで定義されたプロシージャは、すべてそのオブジェクトのプロパティとメソッドになります。)
の、2 種類のモジュールがあります。Access 95 では、フォームまたはレポートと関連付けられた場合にのみ、クラス モジュールが存在しました。Access 97 では、データベース ウィンドウ
(データベース ウィンドウ : Access データベースまたは Access プロジェクトを開くときに表示されるウィンドウ。
このウィンドウには、新しいデータベース オブジェクトを作成するショートカットと既存のオブジェクトを開くショートカットが表示されます。)
の [モジュール] タブにも存在しました。
884デフォルトの名無しさん:2009/03/16(月) 11:32:22
ACCESS 2000系のレポートで
ヘッダーとフッター・明細で別のレコードソースを使いたいのですが何かいい方法はありませんか?

ヘッダーフッターは1つのレコードセット
明細は別のレコードセット

としたいのです。
よろしくお願いします。
885デフォルトの名無しさん:2009/03/16(月) 19:09:44
詳しく
886デフォルトの名無しさん:2009/03/16(月) 20:41:53
>>885

ヘッダーと明細情報にデータがわぁれていて

例えるなら

ヘッダカラム: コード、総称
明細カラム: ヘッダカラムと同じコード、行番号、表示用名称(ヘッダの名称とは違う)
のような感じで
ヘッダ:明細=1:N
になっています。

レポートヘッダに総称とコード

詳細に行番号と、その名称を表示してみたいのです。
887デフォルトの名無しさん:2009/03/16(月) 22:57:33
ワークグループ管理について
実戦投入している方いらっしゃいますか便利ですか?
888デフォルトの名無しさん:2009/03/17(火) 01:07:14
accessって
889デフォルトの名無しさん:2009/03/17(火) 02:59:18
ダメ
890デフォルトの名無しさん:2009/03/17(火) 21:08:04
>>886
フォームの時のように、サブレポートを埋め込めばできるんじゃないの
試した?
891デフォルトの名無しさん:2009/03/18(水) 09:20:32
スルー推奨
892デフォルトの名無しさん:2009/03/18(水) 12:55:24
エクセルで大体のこと出来るのに、何でアクセスが存在するのか解りやすく俺に教えてください
893デフォルトの名無しさん:2009/03/18(水) 13:28:27
894デフォルトの名無しさん:2009/03/18(水) 19:35:22
ゲイツの野望
895デフォルトの名無しさん:2009/03/18(水) 21:51:40
accessに慣れるとexcelのvlookとか関数が19世紀の産業革命くらいの産物
みたいに思えてくるんだよね。>>892
テーブルにexcelファイルリンクで、クエリでいろいろやったものを
DoCmd.TransferSpreedsheet(綴り間違ってるかも)で出力するのがexcel関数使うより便利。
こっちは20世紀革命て感じ?
896895:2009/03/18(水) 22:02:06
あ。綴り間違えてた。Spre”a”dだったね。失敬。acExportしょっちゅう使うから単語登録
してて(職場では)。
ある人がexcelで3時間かけてしてたことを、見るに見かねてaccessで作りこんですべてボタンに
してやったこともあるが、処理時間が3時間→1分に短縮できたこともある。
897デフォルトの名無しさん:2009/03/18(水) 22:13:39
>>895

excelで加工して作るよりaccessの方が楽で速いといいたいらしい
898デフォルトの名無しさん:2009/03/19(木) 12:50:56
マクロをVBAで修正、追加、削除 したりする方法はあるのでしょうか?
その場合、どのようになりますか?
899デフォルトの名無しさん:2009/03/19(木) 21:08:24
日本語おk?
900デフォルトの名無しさん:2009/03/19(木) 23:49:07
マクロは使わず全部VBAでやれ
901デフォルトの名無しさん:2009/03/20(金) 00:10:11
詳しく言ってくれないと分からないよ・・・・
902デフォルトの名無しさん:2009/03/20(金) 00:53:57
>>898
ちょっと調べてみたけど、開いたり削除は
DoCmd.OpenObject acMacro, "マクロ名"
DoCmd.DeleteObject acMacro, "マクロ名"
で出来るんだけど、作成・修正する方法が見つからないなー。

無理にでもやるならウィンドウを開いて SendKeys でキー入力を再現するとか……?
(互換性も何もあったもんじゃないけど)。
DoCmd.RunCommand acCmdNewObjectMacro '新規マクロウィンドウを開く
DoCmd.RunCommand acCmdMacroNames 'マクロ名を表示
SendKeys "", True '必要なキー入力を送って
DoCmd.Save , "マクロ名" 'マクロの保存

動的に内容を変更する必要がないなら
DoCmd.CopyObject や DoCmd.TransferDatabase を使って
他の mdb からインポートすれば良いんだけど。
903デフォルトの名無しさん:2009/03/21(土) 00:59:03
>>898
具体的で何をどうしたいのかもっとキチンと書いてくれないと分からないぞ
904デフォルトの名無しさん:2009/03/21(土) 18:11:23
ああああああアクセスうぜーーーーーーー
905デフォルトの名無しさん:2009/03/21(土) 18:52:23
>>904
確かにそういうところあるよな 気持ちは分かるぞ
906デフォルトの名無しさん:2009/03/21(土) 19:29:29
しっかし、Office2007が会社に導入されたら、45以上くらいのスキル低い平社員たちは
仕事能率がガックンと落ちるんだろうなと思うと、気が滅入る。
先輩たちに無料でインストラクターまがいのことするのが激しくストレス。
向上心のある先輩なら乗り越えてくれそうだけど。

しかもexcel信者が多すぎて、accessの能率の良さを理解していない先輩が多いから
作ったシステムは作った自分しかサポートできず。画面設定も大きいから、それだけでも
office使いにくそうなのに。。。2007になるのは時間の問題!?
907デフォルトの名無しさん:2009/03/22(日) 11:23:10
>>906
そんなにパソコン駆使する仕事なの?
パソコン使っているったって、たいていの人は単なるワープロ・表計算ソフトで
文房具代わり程度の利用の仕方がほとんどじゃないの
そういう意味では、2007になってもメニューの位置が変わったって程度だと思うけどね

システム会社でもない限り、むしろシステム作っている奴の方がかなり稀なほうでしょう
データ処理の頻度ってそんなにあるのかな?
908デフォルトの名無しさん:2009/03/22(日) 20:41:34
質問ですaccessのPG上でテキストデータ型のサイズを(デフォルトでは50ですよね)知るにはどうすれば分かりますか?
909デフォルトの名無しさん:2009/03/22(日) 21:37:15
PG上って何?
910デフォルトの名無しさん:2009/03/22(日) 21:58:44
ググッタらすぐ分かりましたすいません

>>909
プログラム上ですぉ^^
911デフォルトの名無しさん:2009/03/23(月) 10:01:03
せめてPGMだろ
912デフォルトの名無しさん:2009/03/23(月) 18:53:08
リレーションシップが上手く繋がらんぜ!!
おまいらリレーション上手く使うためにどんな努力した?
913デフォルトの名無しさん:2009/03/23(月) 20:01:06
正々堂々と戦うんだ
914デフォルトの名無しさん:2009/03/23(月) 20:42:04
使わないよ
だって縛りがかかりそうじゃない?
915デフォルトの名無しさん:2009/03/23(月) 21:38:41
>>912 は一体何がいいたいんだ?
うまく使うための努力ってどういう意味だか
916デフォルトの名無しさん:2009/03/23(月) 23:02:38
なんだここは低脳どもの巣窟だったか
917デフォルトの名無しさん:2009/03/23(月) 23:31:49
このスレリレーションシップでNGにして
ホント問題ないよなw
918なやめる羊:2009/03/24(火) 00:26:43
皆さん非連結フォームを閉じる時
更新された内容があるかチェックどうやってます?
オープン時に読み込んだデータを別の場所に避難させて
比較してます?

これしか無いんですかね
非連結の場合・・・・
919デフォルトの名無しさん:2009/03/24(火) 11:04:36
フォーム上のコントロールで ( before || afuter ) update じゃだめなのか?
あれは、連結してないとだめなんだっけ?あ、change でフラグ立てるってのもだめかな?
920デフォルトの名無しさん:2009/03/24(火) 12:24:50
非連結なら仕方ないね
921なやめる羊:2009/03/24(火) 19:28:30
マウスでクリックするとフラグ立つんですよ
それ系は
>>920 そうですかぁ
922デフォルトの名無しさん:2009/03/25(水) 00:00:40
最近クラスモジュールってのがフォームのイベントの意味もあるということがわかりましたが
モジュールの近くに出てくるJavaポイ クラスモジュール の方の一般的使い方はどんなもんでしょう
教えていただけませんか
923デフォルトの名無しさん:2009/03/25(水) 23:52:00
データアクセスベージからアクセスのマクロを起動させる事は可能でしょうか?
924デフォルトの名無しさん:2009/03/26(木) 00:20:56
>>918
変更されたかどうかだけわかればいいのなら、フラグ1個作ればいい
フォーム上で更新されたらフラグをセットし、DBに書き出したときにリセット

>>922
意味がよくわからん。クラスモジュールはフォームのイベントと関係ないぞ
925デフォルトの名無しさん:2009/03/26(木) 01:04:42
ByVal と ByRef
ValとRefは何の省略なんでしょう
926デフォルトの名無しさん:2009/03/26(木) 01:09:01
>>924 さん

>>881 さんの回答で、そう思いました
ググったらイベントもクラスモジュールらしいと
後日詳しくZzz
927デフォルトの名無しさん:2009/03/26(木) 06:38:51
value reference
928906:2009/03/26(木) 20:00:19
>>907
そうなんですよ。とある某車関係設計開発含む部署に携わっておりますが
CAD以外だとexcelとパワポは人によっては多用しすぎる程使うし、
access知ってる人はexcelと共同させて便利に使ってます。wordもね。

データ分析、集計などでは日常的に使ってるから、2007になったらある程度の
年齢以上の人になると、大変なんだろな、と思います。

そこへ比べるとイギリス政府はそこらへん動きが速くて、企業に対してはすでに
vistaとoffic2007の導入に警告を発してるらしい。
日本政府は高齢少子化を分かってる癖に、そこら辺、疎すぎ!
929デフォルトの名無しさん:2009/03/29(日) 17:51:45
ところでクラスモジュールどのように使ってますか?
質問保守アゲ
930デフォルトの名無しさん:2009/03/29(日) 18:14:49
フォームモジュール
931デフォルトの名無しさん:2009/03/29(日) 20:30:07
テーブルに列を追加するのって、手作業ならデザインビューで普通にできるけど、
自動でやろうと思っても、末尾以外の位置に追加ってできるんかいな。
ALTER TABLEのSQLステートメントやVisual Basicのコードでやろうと思ったけど、
方法が見つからんかった。
932デフォルトの名無しさん:2009/03/29(日) 21:43:29
一旦リネームするか別のテーブルにレコードを退避
新しいテーブルとして作成
退避しておいたレコードを戻す
933デフォルトの名無しさん:2009/03/29(日) 22:02:23
フォームモジュール=フォームのイベントでは?
934デフォルトの名無しさん:2009/03/29(日) 22:27:52
>>931
VBAならDAOからOrdinalPositionの値を全フィールド正しく設定し直せばおk
935デフォルトの名無しさん:2009/03/29(日) 22:37:28
>>933
イコールじゃないよ
936デフォルトの名無しさん:2009/03/29(日) 23:26:01
>>927 reference
値変わるくせに参照ですか・・・・
937デフォルトの名無しさん:2009/03/29(日) 23:27:12
>>935
?^^
938デフォルトの名無しさん:2009/03/29(日) 23:36:37
質問です
1:Nリレーション設定してデータ削除しようとすると
「リレーションがなんたら」って警告来るじゃないですか
あれ拾って、
かっこいいメッセージ出す方法ないですかね
「おまえはすでに、そのコード使っている・・・」みたいな
939デフォルトの名無しさん:2009/03/30(月) 00:09:36
かっこよくない

はい次の人
940デフォルトの名無しさん:2009/03/30(月) 04:43:35
>>936
値が変えれるから参照渡しなんだよ
この場合の参照ってのは、引数に指定した変数が格納されているメモリへの参照
仮引数の変数は元の変数と同じところを参照してるから、値を変えると元の変数の値も変わる
941デフォルトの名無しさん:2009/03/30(月) 07:35:52
>>937
フォームモジュールにはイベントプロシージャ以外のコードも書くから
942デフォルトの名無しさん:2009/03/30(月) 17:48:00
フォームに通常モジュールを書くといっつも行方不明になる
943デフォルトの名無しさん:2009/03/30(月) 23:04:11
>>941
! ^^
944デフォルトの名無しさん:2009/03/31(火) 01:38:00
>>936
お前参照の意味わかってないだろ
945デフォルトの名無しさん:2009/03/31(火) 21:12:33
>>944
うん
946デフォルトの名無しさん:2009/03/31(火) 22:31:34
質問です
1:Nリレーション設定してデータ削除しようとすると
「リレーションがなんたら」って警告来るじゃないですか
あれ拾って、
渋いメッセージ出す方法ないですかね
「おまえはすでに、そのコードを網走で使っている」みたいな


・・・てゆうか 頼むよ・・・・
947デフォルトの名無しさん:2009/03/31(火) 22:59:28
>>946
テーブルを直接開いて削除された場合は拾えない。

レコードソースを設定したフォームで削除された場合は拾える。
エラー時イベントに次のコードを設定すればOK。

Private Sub Form_Error(DataErr As Integer, Response As Integer)

  If DataErr = 3200 Then
    MsgBox "おまえはすでに、そのコードを網走で使っている"
    Response = acDataErrContinue
  End If

End Sub

解説:
ttp://www.tsware.jp/tips/tips_011.htm
ttp://www.accessclub.jp/urawaza/63.html
Visual Basic Editor の[ヘルプ]->[Microsoft Visual Basic ヘルプ]で "Error イベント" を検索
948デフォルトの名無しさん:2009/03/31(火) 23:40:00
>>947
ありがとうございます
v^^v
949デフォルトの名無しさん:2009/04/01(水) 00:03:58
質問です

Accessでハンマーとレンチの絵のボタンを押してスピンボタン(ms forms 2.0 spinbutton)を追加したのですが使用(削除)するのをやめました

ところが参照設定にms forms object libraryとして残っているじゃないですか
そこで消そうとすると「使用中のコントロールまたは参照を削除するとこが出来ません」とか
言って過去の過ちを取り消させてくれません どうすれば削除できるのでしょう
950デフォルトの名無しさん:2009/04/01(水) 09:25:00
最適化かけてみるとか・・・ねぇよなw
951デフォルトの名無しさん:2009/04/01(水) 19:06:30
>>949
別ファイルにオブジェクトをエクスポート、または反対側のファイルからインポートしろ。
952デフォルトの名無しさん:2009/04/01(水) 19:38:57
まあ、普通に考えると、その削除したスピンボタン以外に
そのライブラリを使ってる何かがあるんだろうな

そもそもその参照って消せるのか?
アクセスで使ってるフォームそのものとかだったりしないのか?
953デフォルトの名無しさん:2009/04/01(水) 19:41:56
チェックを外したいんです・・・

ACCESS2000でもACCESS2003でも同様でした
954デフォルトの名無しさん:2009/04/01(水) 19:52:34
だから、外せないなら代替手段として、別の新規Accessファイルにオブジェクト
を全部エクスポートして再構築すればいいだろ。
955デフォルトの名無しさん:2009/04/01(水) 19:59:43
>>949 お!消えました・・・
しかし消えた理由はなぞのママ
956デフォルトの名無しさん:2009/04/01(水) 20:01:10
>>954 どもども今やってみたばかりなんで「^^
957デフォルトの名無しさん:2009/04/02(木) 13:00:46
>>955
が何やって消えたかは謎だが
最適化だとしたら十分あり得る
958デフォルトの名無しさん:2009/04/02(木) 16:12:41
たぶんコンパイルだろう
最適化やるとコンパイルもかかったはず
ソース上は参照されたオブジェクトは全部消えてたんだが
内部的などっかにのこってたんだろうと予想
959デフォルトの名無しさん:2009/04/02(木) 20:07:22
最適化で消えたんじゃありません
インポートです
実際最適化じゃ消えません弟子た
960デフォルトの名無しさん:2009/04/06(月) 20:58:43
age
961デフォルトの名無しさん:2009/04/08(水) 23:17:49
accessのトランザクションはSqlServerと比べるとどうですか?
962デフォルトの名無しさん:2009/04/08(水) 23:23:57
Accessの場合トランサクションしたほうが速くなる。
963デフォルトの名無しさん:2009/04/08(水) 23:33:16
それは初耳だ・・・ なんで?
964デフォルトの名無しさん:2009/04/09(木) 09:14:44
>>962
kwsk
初耳だ
965デフォルトの名無しさん:2009/04/10(金) 12:19:33
トランザクション2000
966通りすがり:2009/04/11(土) 03:27:28
>>962 >>963 >>964
うろおぼえだが、

Jetが関連するデータをメモリ上にロードしてトランザクションをオンメモリで処理しようとするから、
データがメモリに収まれば速く動作する。データがでかすぎると変わらない。

って話をAccess2000使ってた時に聞いた希ガス。
967デフォルトの名無しさん:2009/04/12(日) 13:28:16
トランザクションをオンメモリで処理
トランザクションをオンメモリで処理
トランザクションをオンメモリで処理

(-_-;)
968デフォルトの名無しさん:2009/04/12(日) 17:49:40
昔はJetはトランザクションしたほうが早いってのは、結構有名な話だったんだがな

Jetエンジンは、ファイル共有をベースとしたDBエンジンだから、データ操作にバッファとかもってないんだよ
なんで、SQL発行のたびにファイルIOが発生する
これをトランザクションにすると、コミット時に一気にIOしようとするんで、
ファイルIOの時間が短くて済む=速くなる、って寸法

トランザクションをオンメモリってのはまあたぶんそういうことの説明だと思われ
969デフォルトの名無しさん:2009/04/12(日) 18:35:22
つーかJETって普通にクソ速いよね
SQL Serverなんかに比べると
970デフォルトの名無しさん:2009/04/12(日) 23:52:13
結語い処理とかがあんな糞なのに?
971デフォルトの名無しさん:2009/04/12(日) 23:52:54
誤爆
結合処理が
だった
972デフォルトの名無しさん:2009/04/13(月) 00:13:27
複雑な結合とかサブクエリとか使ってるとSQLServerのほうに分があるけど
単純なUPDATEやDELETEを発行するだけなら圧倒的にJETの勝ちって気がする
973デフォルトの名無しさん:2009/04/13(月) 00:18:03
大規模業務に耐えられるかという話が…
974デフォルトの名無しさん:2009/04/13(月) 12:47:15
ローカルに置いておくなら圧倒的にJET
共有を前提とするなら、MSDEなりSQL Server Express Edition
975通りすがり:2009/04/13(月) 13:50:29
>>968
ソレダ!
976デフォルトの名無しさん:2009/04/13(月) 22:04:56
2003すぐとぶんですけど
977デフォルトの名無しさん:2009/04/13(月) 22:21:24
Accessが飛ぶなら桐を使えばいいじゃない
978デフォルトの名無しさん:2009/04/13(月) 22:23:15
桐は高いです!
979デフォルトの名無しさん:2009/04/13(月) 22:27:16
最終的にはdだ分のフォローをし続けるお前の無駄な残業手当のほうがよっぽど高くつく
980デフォルトの名無しさん:2009/04/13(月) 22:32:03
お前ら2007を使うときはパッチ当てとけよ・・・
俺は当てずに最適化かましてDBが完全に消し飛んで焦った

マジ使えねぇ…
981デフォルトの名無しさん:2009/04/13(月) 23:37:48
それ結構聞く話なんだが、SP1では直ってないとも聞いたが
最近対応するパッチでもでた?
982デフォルトの名無しさん:2009/04/13(月) 23:44:31
>>969,972
単純なSQLでも、ある程度の件数を超えたあたりから急激にパフォーマンスが劣化する
俺の経験的にはアクセスは10万行程度が限界だとおもうな。100万行オーダーの処理はきつい
最近のは触ってないから改善されてるのかもしれんがな

あと細い回線経由でつかうと、単純な検索でも死ねるぞw
983デフォルトの名無しさん:2009/04/13(月) 23:59:30
経験的な話でいいなら単純に100万レコードDELETEのSQLでJETは数秒で終わるけど
SQLServerではデフォルトのタイムアウト30秒以内にも終わらずに落ちることが多いよ。

そういう時はTRUNCATE使えよってことなら単純な100万レコードUPDATEの比較でもいいけど
やっぱり結果は同じようなもの。
984デフォルトの名無しさん:2009/04/14(火) 00:10:14
>>981
>>850 の Hotfix の事じゃない?
985デフォルトの名無しさん:2009/04/14(火) 00:38:08
>>983
俺が経験したのは、10万レコードで検索に1秒程度なのに、15万レコードになると
検索に数10秒かかるようになった
あくまでローカルディスクのMDBに対してな。JETで10万オーダーの検索なんて、
ネットワーク経由でやる気にならんw
全件削除とかは、検索しなくていいから、その分IO量少なくて差が出にくいんだろうなと思う
OFFICE XP時代の話だから、最近のは改善されてるのかもな
986デフォルトの名無しさん:2009/04/14(火) 20:24:31
>>983
にかわにはしんじがたい
987デフォルトの名無しさん:2009/04/14(火) 22:50:58
>>980
オプション設定でdbReadOnlyして<<なければ>>安全ですよね・・・・・
違ったけ?

Set rs = db.OpenRecordset("ハムハム", dbOpenTable, dbReadOnly) <<これ
988デフォルトの名無しさん:2009/04/14(火) 22:52:04
>>986
に・・にかわ?
989デフォルトの名無しさん:2009/04/14(火) 23:34:36
楽器等に使われる動物由来の接着剤
990デフォルトの名無しさん
>>986
検索の必要がない全件削除とか全件更新ならありえなくはないと思う

ただ、経験上、JETは性能と件数が比例しなくなるポイントがある
単純な件数じゃなくて、テーブルサイズやMDBのサイズにもよるんだろうけど
100万件で数秒だから、200万件で10秒以下で終わるかというとそうならなかったり
1000万件になったら動かなくなったりな