09/01/03 17:29:34
ACCESSに関する質問はこちらへ!
▼━ 質問のしかた ━━━━━━━━━━
★ OS、ACCESSのバージョンを明記してください。
★ 質問内容は具体的に書いてください。
・何がしたいのか
・どんな処理を試したか
・動作状況など駄目な理由
テーブル/フォームの構成、クエリ、VBAの内容など差し支えない
範囲で詳しく書くと、早く回答が得られるかもしれません。
図解があれば尚良し。
聞き返さなくても詳細が把握できる質問が望ましいです。
★ 事前にヘルプ・Google等で調べられる範囲は調べてください。
大概の疑問は検索することで解決します。
★ アドバイスを貰ったら、必ず経過・結果の報告をして下さい。
ギブアンドテイクで情報を共有しましょう。
▼━質問テンプレ (出来れば使ってね) ━━━━━━
【 システム環境 . 】 Windows**, Access**
【 VBAが使えるか .】 はい・いいえ
【 VBAでの回答 】 可・否
【 検索キーワード 】 Googleやヘルプでの検索キーワード
前スレ
Access総合相談所 其の19 【桐にしとけ】
スレリンク(bsoft板)
桐はこちら↓
管理工学研究所「桐」【4】
スレリンク(bsoft板)
2:名無しさん@そうだ選挙にいこう
09/01/03 17:30:28
ACCESS2000総合相談所
URLリンク(pc.2ch.net)
ACCESS総合相談所 その2
URLリンク(pc.2ch.net)
ACCESS総合相談所 その3
URLリンク(pc.2ch.net)
ACCESS総合相談所 その4
URLリンク(pc.2ch.net)
ACCESS総合相談所 その5
URLリンク(pc.2ch.net)
ACCESS総合相談所 その6
URLリンク(pc2.2ch.net)
ACCESS総合相談所 その7
URLリンク(pc2.2ch.net)
ACCESS総合相談所 その8(消息不明です)
URLリンク(pc2.2ch.net)
ACCESS総合相談所 その9(消息不明です)
スレリンク(bsoft板)
ACCESS総合相談所 その10
スレリンク(bsoft板)
ACCESS総合相談所 その11
スレリンク(bsoft板)
ACCESS総合相談所 その12
スレリンク(bsoft板)
ACCESS総合相談所 その13 【桐にしとけ】
スレリンク(bsoft板)
ACCESS総合相談所 その14 【桐にしとけ】
スレリンク(bsoft板)
ACCESS総合相談所 その15
スレリンク(bsoft板)
ACCESS総合相談所 その16 【桐にしとけ】
スレリンク(bsoft板)
3:名無しさん@そうだ選挙にいこう
09/01/03 17:31:51
ACCESS総合相談所 その17 【桐にしとけ】
スレリンク(bsoft板)
ACCESS総合相談所 その18 【桐にしとけ】
スレリンク(bsoft板)
4:名無しさん@そうだ選挙にいこう
09/01/03 17:52:17
FAQ
Q1) Access で累計や残高を計算するのにはどうすれば良いですか?
A1) 桐にしとけ。Accessでは、9500レコードまでならばDAOrecordset作って先頭から逐次計算していけば出来ます。
5:名無しさん@そうだ選挙にいこう
09/01/03 19:14:20
今だ>>4ゲットオォォォォ!!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ (´´
∧∧ ) (´⌒(´
⊂(゚Д゚⊂⌒`つ≡≡≡(´⌒;;;≡≡≡
 ̄ ̄ (´⌒(´⌒;;
ズザーーーーーッ
6:名無しさん@そうだ選挙にいこう
09/01/03 19:28:50
>>4
どうでもいいが、その9500レコードって共有ロック数の規定値の問題なんじゃないのか。
7:名無しさん@そうだ選挙にいこう
09/01/03 20:21:47
確か、ここの過去スレ保存してる所あったよね?
8:名無しさん@そうだ選挙にいこう
09/01/04 07:48:52
すれ違い気味ですが、あるフォルダにあるアクセスのファイルを(フォームをと通して)参照、
更新は可能で、ファイルそのもの自体のコピーを不可にすることができるでしょうか?
9:名無しさん@そうだ選挙にいこう
09/01/04 09:03:31
後半だけなら可能なのか?
10:名無しさん@そうだ選挙にいこう
09/01/04 17:38:24
>>8
AccessとゆーよりOSの話だけど、原理的に無理と思われ。
参照する時点でファイル丸ごとクライアントにコピーしてるみたいなもんだから。
すなおにサーバ系DBを使ってください。
11:名無しさん@そうだ選挙にいこう
09/01/04 18:06:20
>>8
フォームからしか開けない形で(工夫がいるが)パスワード設定しとけよ
Access2007のパスワードは未だ破られてないぞ
12:8
09/01/05 14:28:50
レス下さった方ありがとうございました。
参考にさせて頂きます。
13:名無しさん@そうだ選挙にいこう
09/01/08 11:54:01
xp sp2 access2003 VBA可(初心者)
明細画面のヘッダ部にソート可能な機能を付加しているんですが、
何度もソートを繰り返していると「これ以上クエリを開けません」といったエラー
メッセージが出てしまいます。
これを解消する方法は(クエリの開放?みたいな命令・・)ないでしょうか?
コードは以下のような感じです(ソートボタンを押したタイミングです)
rs.sort = "AAAA"
set rs = rs.openrecordset
set me.recordset = rs
me.requery
初心者丸出しの質問で恐縮ですが、宜しくお願いします。
14:名無しさん@そうだ選挙にいこう
09/01/08 13:54:55
質問です、以下に登場するmdbファイルはアクセスのファイルですか?
184 名前:非公開@個人情報保護のため[sage] 投稿日:2009/01/08(木) 13:48:22
URLリンク(www.dotup.org)
こんなのとか
185 名前:非公開@個人情報保護のため[] 投稿日:2009/01/08(木) 13:50:16
特許庁非公開内部情報を補助金ゴロの岡田ちゃん(誰かの息子)が所持・流出させてる件に付いて、御意見くださいませ<m(__)m>
--------------------------
【過去最大のつこうた】IPA職員が、11歳ハメ撮り動画をDL&大企業情報流出★77【眉も曇らす】
スレリンク(news板:507番)
507 名前: すずめちゃん(東京都)[] 投稿日:2009/01/08(木) 13:21:49.87 ID:IpWrArXx ?PLT(17000)
URLリンク(img.2ch.net)
>>373
あれれ~
なんで公開前にファイルを入手してるのかなぁ?
URLリンク(www.dotup.org)
URLリンク(s01.megalodon.jp)
186 名前:非公開@個人情報保護のため[] 投稿日:2009/01/08(木) 13:52:18
>>184
URLリンク(s01.megalodon.jp)
15:名無しさん@そうだ選挙にいこう
09/01/08 18:02:39
>>13
ソートボタン_Click()の中で変数:rs を宣言されていると思いますが、
最後に rs の廃棄はされてますか?(DatabaseObjedtも同様)
Set rs=Nothing
Set db=Nothing
16:名無しさん@そうだ選挙にいこう
09/01/08 20:38:14
教えてください。初心者で、つい1週間前から会社でアクセスを使い始めました。
今日、アクセスが強制終了してしまい、その後、データが壊れていますとメッセージが
でるようになってしまいました。
メッセージによると、コピーを作って、ツールから最適化と修復ボタンを押せと
言っているのですが、受け付けません。
これはもうだめでしょうか?
アクセス2003で、OSはわかりません。データは会社のサーバーに入れてありました。
よろしくお願いします。
17:名無しさん@そうだ選挙にいこう
09/01/08 20:57:55
>>16
URLリンク(support.microsoft.com)
18:13
09/01/08 21:57:19
>>15
レスありがとうございます。
ソートボタン_Click()の中でrsを破棄してませんでした。
今は抽出条件入力画面→明細画面という形をとっているため、
変数rs(dbも)は外部変数で定義しています。
rsの破棄は、抽出条件入力画面フォームを閉じたときに行っていました。
頂いたレスに関して質問したいことがあるのですが、
ご指摘にあるように、ソートボタン_Click()の中で破棄するような形でいろいろ
試した後に改めて質問させてください。
その時にまたご教授いただけると助かります・・・
19:名無しさん@そうだ選挙にいこう
09/01/08 22:21:03
>>17さん回答ありがとうございます。
サイトを読むと修復不可能かもしれません。
ところで.ldbファイルとは隠しファイルですか?出来るとしたら、データベースと
同じフォルダ内にできるのでしょうか?
とにかく、明日やってみます。
20:名無しさん@そうだ選挙にいこう
09/01/08 22:37:26
>>19
ldbファイルはロックファイルでmdbファイルと同じフォルダに作られます。
複数ユーザーが同時にmdbを使用している時に使用されるファイルなので
今回の場合は削除してしまって構いません。
21:名無しさん@そうだ選挙にいこう
09/01/09 14:09:18
明細行表示フォームで、各明細行の項目1つを入力していき、
保存ボタンが押されたタイミングでテーブルを更新したいんですが、
そんなことできますでしょうか?
現在だと入力後、カーソルを移動させたら自動で保存されちゃいます・・・
xpで2003を使ってます。
22:名無しさん@そうだ選挙にいこう
09/01/09 18:03:59
>>21
簡単にはできない。相当頑張ればできる。・・・と思います。
23:名無しさん@そうだ選挙にいこう
09/01/09 18:08:34
>>21
> 明細行表示フォームで、各明細行の項目1つを入力していき、
> 保存ボタンが押されたタイミングでテーブルを更新したいんですが、
普通に、保存ボタンのクリックイベントにマクロでも設定して書き込めば良いじゃん
> 現在だと入力後、カーソルを移動させたら自動で保存されちゃいます・・・
連結コントロールだからでしょ、プロパティのコントロールソースを削除
24:名無しさん@そうだ選挙にいこう
09/01/09 19:36:26
Access2002で作成したmdbがあるんですが、
これを他のVistaPCに2007Runtimeを入れて
使用することはできるんでしょうか?
要約すると、
1.Vistaに対応していないAccess2002のmdbが動くか
2.2007Runtimeには下位互換性があるのか
です。
25:名無しさん@そうだ選挙にいこう
09/01/09 20:02:39
>>24
桐にしとけば、そういう心配は要らんぞ
26:名無しさん@そうだ選挙にいこう
09/01/09 22:45:16
>>24
ランタイムじゃないけど、2002でつくったmdbが2007でエラー出まくってる。
ものによっては普通に動くかもしれないな。
27:名無しさん@そうだ選挙にいこう
09/01/10 04:00:24
>>24
この辺りが参考になるかもしれません。
URLリンク(technet.microsoft.com)
まぁ、複雑なものほどエラーが発生する可能性は高いと思いますが・・・
28:21
09/01/10 08:52:56
>>22
>>23
レスありがとうです。
これからいろいろ調べて見ます。
29:名無しさん@そうだ選挙にいこう
09/01/10 13:06:23
日本は1400年前から官僚国家・役人天国、役人が一般人を支配する国だ
戦争に負けても、社会党が政権とっても、変わらなかった、今後も永遠に変わらん
おまえら一般人は、せっせと働いて年貢を納めてろ!
30:名無しさん@そうだ選挙にいこう
09/01/10 20:29:31
>>26>>27
レスありがとうございます。
う~ん、やっぱ試してみるしかないですね。
31:名無しさん@そうだ選挙にいこう
09/01/11 17:22:40
16です。
やはりファイルの修復はだめでした。なんとかデータだけエクセルファイルでひろうことが
できたのが救いです。
みなさんいろいろ教えてくださってありがとうございました!
32:名無しさん@そうだ選挙にいこう
09/01/11 20:30:54
>>31=16
お疲れ様でした。
今後、データを救うことができない破損にも遭遇するかもしれません。
定期的なバックアップを是非とも行いましょう。
33:名無しさん@そうだ選挙にいこう
09/01/12 12:54:16
フォーム上のテキストボックスに入力した数値を
テーブル上の項目の値に加算したいんだけど
update文の中でテキストボックスの値を指定するのってどうしたらできるんでしょうか
34:名無しさん@そうだ選挙にいこう
09/01/12 14:02:57
>>33
少しずつ意味合いは異なりますが
Me.TextBox1.Text
Me.TextBox1.Value
Forms!Form1!TextBox1.Text
Forms!Form1!TextBox1.Value
この辺りを使って、
QueryString = "UPDATE table1 SET field1 = field1 + " & Me.TextBox1.Text
のようにすれば宜しいかと。
※テキストボックスの内容が数値以外だった場合も考慮するとよりベターです。
35:名無しさん@そうだ選挙にいこう
09/01/12 16:39:08
>34
ありがとうございます。
もうすこし詳しくいうと
倉庫(在庫)テーブル(倉庫TBL)
ID、棚ID、商品ID、個数、入庫日時、出庫日時、出庫フラグ
商品(箱)テーブル(商品TBL)
ID、商品名
棚テーブル(棚TBL)
ID、名前、位置情報(メモ)
のようなテーブルを用意して入庫、出庫、空棚検索、入出庫履歴などの
機能を作りこみたいわけなんですが、
ある箱を出庫したときにその箱を出庫済みにする(出庫フラグをfalseにする)処理と
特定の商品が入っている棚をリストアップする処理に、
どうしても出庫した箱を入力するテキストボックスや、検索したい商品IDを入力するテキストボックスと
そこにはいった文字をもとにしたクエリが必要になるなあと思ったんですよ。
クエリのところでそういうSQLを書いて、ボタンを押されたときにそのクエリ
を呼ぶようにすればいいんですよね?
素人ですみません
36:34
09/01/12 17:53:43
>>35=33
多少のVBAの知識と、最低限のDAOもしくはADOの知識を前提に
レスしてしまいました。(クエリで前述のSQL文をそのまま書いても動作しません)
作り込みたい内容はよく分かりましたので、下記HPなどを参考に
1つずつ実現していってはどうでしょうか?(一度に欲張らずにコツコツと)
URLリンク(www.accessclub.jp)
左側にあるリンク、VBA物語,DAO入門講座,ADO入門講座あたりが良いと思います。
37:名無しさん@そうだ選挙にいこう
09/01/13 20:32:25
フォームの入力エリア(テキストエリア?)についてなんですが
この入力エリアに入力される文字数を64文字とか制限する設定は
どこでしたらよいのでしょうか?
38:名無しさん@そうだ選挙にいこう
09/01/13 21:39:07
>>37
入力規則
細かく制御するならKeyPressイベント
39:名無しさん@そうだ選挙にいこう
09/01/13 21:41:22
連結するフィールド長を64にすればいいんじゃね?
そうでなければVBAでコード書くか
40:名無しさん@そうだ選挙にいこう
09/01/13 23:02:10
>>37
桐にしとくと簡単だよ
41:名無しさん@そうだ選挙にいこう
09/01/13 23:46:21
いままで動いていたシステムが、急に動かなくなった。
調べてみると、Replace関数でエラーが出てる。
新しく作りなおしても、Replaceが機能しない。
Accessの修復インストールするか・・・
42:名無しさん@そうだ選挙にいこう
09/01/13 23:54:26
俺なら更新後処理で
Me!テキスト = Left(Me!テキスト, 64)
43:名無しさん@そうだ選挙にいこう
09/01/14 22:22:34
> 41
作った環境と今使用している環境が違うんじゃないの?
44:名無しさん@そうだ選挙にいこう
09/01/14 23:27:55
数種類のバージョンが混在した環境なのかも。
Replace関連のエラーというと2000あたりだろうか。
45:名無しさん@そうだ選挙にいこう
09/01/15 16:21:07
Like演算子の使い方がうまくいかないのですが・・・・
rs = db.OpenRecordset(stspl, dbOpenDynaset) を実行したときに
実行時エラー3075
クエリ式 '名称_カナ Like *アイウ*'の演算子がありません。
というエラーが起こってしまいます。
stsqlは以下のような文字列になっているのですが、何処かおかしいところがあるでしょうか・・・?
"SELECT * FROM T001 WHERE 名称_カナ Like *アイウ*"
46:名無しさん@そうだ選挙にいこう
09/01/15 16:33:20
*アイウ* をシングルクォートで囲んで下さい。
47:45
09/01/16 07:39:23
>>46
すみません、ありがとうございました。
48:名無しさん@そうだ選挙にいこう
09/01/16 13:16:57
Access2000で作成したADPをAccess2003で開くと(または変換すると)、
レポートの入力パラメータの記述が途中で切れてしまう(もしくは空白)症状が
確定現象として発生しております。
このような症状の改善策をご存知の方はいらっしゃいますでしょうか?
49:名無しさん@そうだ選挙にいこう
09/01/18 11:47:07
50:名無しさん@そうだ選挙にいこう
09/01/18 21:24:11
例えばフォームでその日の最高値を表示させるのはどうしたらいいですか
51:名無しさん@そうだ選挙にいこう
09/01/18 21:30:15
仮定の質問には答えられません
貴方達とは違うんです
52:名無しさん@そうだ選挙にいこう
09/01/18 21:40:36
すいません
たとえば一つのテーブルに日付と100からの番号があるとして
その日の最終番号の次の番号をテキストに表示させたいんです
53:名無しさん@そうだ選挙にいこう
09/01/18 21:44:32
Dmax()+1
とか
54:名無しさん@そうだ選挙にいこう
09/01/18 21:47:43
ありがとうございます。
でも、日付別がわかりません
たとえば、日付のテキストが同じ
フォーム上にあるとして
毎日100から連番を取るんです
55:名無しさん@そうだ選挙にいこう
09/01/18 21:49:24
Dmax() のカッコ内にexper 指定する、ヘルプで調べて勉強して
56:名無しさん@そうだ選挙にいこう
09/01/18 22:03:28
有難うございます
何とかなりそうです
貴重な時間をありがとうございました。
57:名無しさん@そうだ選挙にいこう
09/01/18 22:06:13
>>56
ゴメン、書き違い
experじゃなくcriteriaね
58:名無しさん@そうだ選挙にいこう
09/01/18 23:05:06
ありがとうございます
今格闘中です
59:名無しさん@そうだ選挙にいこう
09/01/19 09:00:27
xp sp2 2003 VBA可です。
非連結の単票フォームでマスタの登録画面を作っています。
保存ボタンを押したあと、採番されたID(オートナンバー)を表示させたいのですが、
IDの値を取得する一番簡単は方法は何でしょうか?
DAOでrs.AddNew 、 rs.Updateを使っています。
宜しくお願いします。
60:名無しさん@そうだ選挙にいこう
09/01/19 12:17:16
連結のテキストボックスを作っといて、それのコントロールソースを…
61:名無しさん@そうだ選挙にいこう
09/01/19 12:59:51
>>60
ああ・・・なるほど、非表示で。
ありがとうございました。ちょっと試してみます。
62:名無しさん@そうだ選挙にいこう
09/01/19 13:06:41
>>59
rs.AddNewを実行した段階でオートナンバー型の採番が行われますので、
AddNew後であれば rs からIDの取得が可能です。
AddNew→ IDを表示→ 入力を行って→ Update
63:名無しさん@そうだ選挙にいこう
09/01/19 13:09:29
>>62
そうなんですか!
ありがとうございます。
64:名無しさん@そうだ選挙にいこう
09/01/20 14:55:23
単票フォームに入力された値を全てクリアする
コードってあったらおしえてください。
me.aaa.value=null
me.bbb.value=null
・
・
とかやってて悲しくなってきました・・・・
65:名無しさん@そうだ選挙にいこう
09/01/20 14:58:22
For each control in ホニャララ
つーか桐にしとけばファミリって使えるぞ
66:名無しさん@そうだ選挙にいこう
09/01/20 15:14:50
>>65
ありがとうございました。使い方を調べてみます。
67:名無しさん@そうだ選挙にいこう
09/01/21 09:52:37
オプショングループでオプションボタンを2つ作成したのですが、
ソースの中でlockedとかをコントロールしていたら、
フォームを開いた時点でボタンを選択すると黒塗りが移動しなくなってしまいました。
(選択されたボタンのイベント自体は動作しています)
原因の対処方があれば教えて下さい。
68:名無しさん@そうだ選挙にいこう
09/01/21 10:44:20
特許庁のシステムとか、西武百貨店のシステムとか、三井リハウスのシステムとか
アクセス→QSLサーバー接続で作ったシステムです
それぞれ、プロが数千万円の助成金で作ったシステムです
見本としてドゾー
469 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/21(水) 10:37:01.88 ID:dHGJSy0O
ほれ全部うpした 解凍したら6Gになるから
URLリンク(ipa-giwaku.com)
拡張子.dbxは下のフリーソフト使えば見れるようになるよ
URLリンク(www.asahi-net.or.jp)
拡張子.mdbはエクセルで開ける
パスは DD`(4Y か test で だいたい開ける それでもダメなら報告してね
まずかったら消す
69:名無しさん@そうだ選挙にいこう
09/01/21 11:58:12
もろうていいの?
70:名無しさん@そうだ選挙にいこう
09/01/21 14:31:59
…はむぅ('ω'`)
71:名無しさん@そうだ選挙にいこう
09/01/21 16:16:15
>>68
分割してダウンロードしやすいのはコッチ
特許庁のシステムとか、西武百貨店のシステムとか、三井リハウスのシステムとか
アクセス→QSLサーバー接続で作ったシステムです
それぞれ、プロが数千万円の報酬や助成金で作ったシステムです
プログラム作成のお勉強見本としてドゾー
URLリンク(www.megarotic.com)
URLリンク(www.megarotic.com)
URLリンク(www.megarotic.com)
基本はnews
72:名無しさん@そうだ選挙にいこう
09/01/21 20:02:59
QSLが気になって仕方ない
73:名無しさん@そうだ選挙にいこう
09/01/22 12:50:24
>>71
スゲーーー
74:名無しさん@そうだ選挙にいこう
09/01/22 12:59:08
もろうた♪
オススメどれ?
75:名無しさん@そうだ選挙にいこう
09/01/22 14:42:01
抽出条件入力フォーム→明細表示フォームという感じのを作っているのですが、
明細フォームに追加したソート機能を実行した場合、
戻るボタン押下後、抽出条件入力フォームへ戻るとき処理時間が5秒程かかってしまいます。
明細画面でソートを行わなかった場合は1秒もかかりません。
上記現象を解消する方法があったらおしえてください。
me.orderby = "AAAA"
me.orderbyon = true
を使っています。
76:75
09/01/22 14:46:16
補足です。
戻るを押したとき、「検索キーが見つかりません」とかメッセージが出てきました・・・
77:名無しさん@そうだ選挙にいこう
09/01/22 17:13:48
特許庁も西武もフォームとかは手抜きだなぁ、お役所仕事は楽で良いわ
78:名無しさん@そうだ選挙にいこう
09/01/22 17:30:04
日本は1400年前から官僚国家・役人天国、役人が一般人を支配する国だ
戦争に負けても、社会党が政権とっても、変わらなかった、今後も永遠に変わらん
おまえら一般人は、せっせと働いて年貢を納めてろ!
支配して甘い汁吸ってる側は、地縁・血縁・遠縁で繋がってるんだよ
一般人が、今頃それに気付いても、ビクともせんわ
働け、働け、年貢を納めろ
79:名無しさん@そうだ選挙にいこう
09/01/22 20:10:51
656 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/22(木) 20:09:35.67 ID:QCEQrtFA
流出ファイルうpしておいた パスは 135 ね
解凍したら全部で6Gあるから注意してね
URLリンク(ipa-giwaku.com)
URLリンク(ipa-giwaku.com)
両方DLしてから解凍してくれ
拡張子.dbxは下のフリーソフト使えば見れるようになるよ
URLリンク(www.asahi-net.or.jp)
拡張子.mdbはエクセルで開ける 起動フォームでテーブルがブロックされるものは、シフトキー押しながら起動で解除してテーブル見る
中のファイルのパスは DD`(4Y か test で だいたい開ける それでもダメなら報告してね
80:名無しさん@そうだ選挙にいこう
09/01/22 23:17:42
xp sp2 access2003 VBA可
フォーム内にサブフォームをデータシートビューでクエリを
表示、編集可能な状態にしていて
更新、追加、削除のどの動作にも問題はないのですが、一点だけ、
サブフォーム内上段の項目名のフィルタになる部分を押すと
「クエリー式'[ID]'=の構文エラー」となってしまいます
理由が分かる方いらしたら教えてください。
81:名無しさん@そうだ選挙にいこう
09/01/22 23:51:42
フォームでAND,OR,NOT検索ができるボタンをつくりたいのですが、
どなたかやり方を教えていただけないでしょうか。
イベントのビルドのところのプログラムで、Filterを使えばいいということはわかっています。
82:名無しさん@そうだ選挙にいこう
09/01/23 07:49:06
ACCESでデータベースを作っていますが、
SQLで書くのではなく、OPENQUERIY使ってクエリを読み込ませる形で検索するようにしてるんですが、
これってよくないのでしょうか?
SQL書くより楽だし、変更があったとき、クエリを入れ替えるだけなのでやりやすいのですが。
ただしソフト開くと中はクエリだらけです。
83:名無しさん@そうだ選挙にいこう
09/01/23 07:49:45
OPENQUERIYでなはく、openqueryでした。すみません。
84:名無しさん@そうだ選挙にいこう
09/01/23 13:03:16
>>75
フォームやコードの詳細が分からないので何とも言えませんが、
抽出条件フォームに戻る際にソートを解除してから戻ってみては?
>>80
エラーをそのまま解釈すると、[ID]と比較する抽出条件が
設定されていないように思いますが。
>>81
[Access Filterプロパティ]でぐぐると多数サンプルが出てきます。
要はVBAを使ってFilterプロパティに条件式を設定すればOKです。
>>82
別に悪くないと思いますよ。
保存されたクエリを実行した場合のメリットもありますし
後は保守性や好みの問題でしょう。(自分はVBA中にSQLを書く派です)
85:名無しさん@そうだ選挙にいこう
09/01/23 13:20:24
特許庁のデータベースたいしたことないな、俺でも作れるわ。
86:81
09/01/24 00:50:25
ありがとうございます。
87:名無しさん@そうだ選挙にいこう
09/01/24 01:06:56
AC2000:
フォームのラベルで
"&"が正しく表示されません
どげんしたらよかとですか
88:名無しさん@そうだ選挙にいこう
09/01/24 02:49:04
>>87
&&
89:82
09/01/24 07:38:14
>>84
ありがとうございました。
気になっているのは、他の会社でも自分みたいなやり方で作っているのかどうかということです。
当方社内SEですが、転職したことがないので他の会社のスタンダードな作り方がわかりません。
やっぱスタンダードはVBA中にSQLを書くやり方なんでしょうか?
もし、転職した際クエリを読み込ませるといった、こういった作り方してたら笑われるのではないかと。
個人で使うACCESSでなく、部署内で使うACCESSに対してこういったクエリを読み込ませるやり方で作っています。
90:75
09/01/24 07:43:58
>>84
ありがとうございます。早速試してみます。
91:87
09/01/24 09:37:01
>88
ありがとう!
92:名無しさん@そうだ選挙にいこう
09/01/24 14:22:21
>>89=82
動的にクエリの形式が変化する場合など、VBA中にSQLを書かざるを
得ないケースもありますね。
あと共同で作業を行う場合は一定のルールを設けておいた方が効率的です。
その意味で標準は‘作法’みたいなもので会社によって様々だと思います。
郷には入れば郷に従え。
93:名無しさん@そうだ選挙にいこう
09/01/24 16:05:00
>>92
そうですか、ありがとうございました。
94:名無しさん@そうだ選挙にいこう
09/01/25 12:04:53
476 名前: すずめちゃん(アラバマ州)[sage] 投稿日:2009/01/25(日) 12:02:20.71 ID:pNrDVo49
解析班のために岡ちゃんが流出させた上のファイル全部うpしとく
パスは 135 ね
解凍したら全部で6Gあるから注意してね ウイルス削除済み
(p)URLリンク(www.adrive.com)
(p)URLリンク(www.adrive.com)
(p)URLリンク(www.adrive.com)
(p)URLリンク(www.adrive.com)
負荷分散のため分けた。
全部同時にDLすれば早いぞ1時間位 全部DLしてから解凍してくれ
拡張子.dbxは下のフリーソフト使えば見れるようになるよ
(p)URLリンク(www.asahi-net.or.jp)
拡張子.mdbはエクセルで開ける 起動フォームでテーブルがブロックされるものは
シフトキー押しながら起動で解除してテーブル見る
中のファイルのパスは DD`(4Y か test で だいたい開ける
それでもダメなら報告してね 皆で解析するからw
後、個人情報を悪用したらダメだよw解析用だけにつかってねw
95:名無しさん@そうだ選挙にいこう
09/01/26 10:18:08
西武百貨店のDB凄いな
96:名無しさん@そうだ選挙にいこう
09/01/27 09:48:02
自分でメニューバーを作成して、そこに「印刷(標準のメニュー)」を追加したんですが、
これを選択するといきなり印刷がはじまってしまいます。
いったん設定画面(ページ数とかページ指定の画面)を表示したいのですが、どうすればいいでしょうか?
ちなみにショートカット(ctr+p)だと設定画面が表示されます。
97:名無しさん@そうだ選挙にいこう
09/01/27 13:03:25
>>96
「印刷」ではなくて「印刷プレビュー」を使う。
98:名無しさん@そうだ選挙にいこう
09/01/27 14:29:11
当方XP SP2、2003、VBA可です。
明細画面の画面の大きさ(1明細の幅、高さではありません)って何処で指定するんでしょうか?
開いた時の明細表示数を多くしたいんです。
99:名無しさん@そうだ選挙にいこう
09/01/27 15:03:02
>>98
どこまでやりたい?
全画面でいいなら、開くときにでも
DoCmd.Maximize
を入れてやれ。
100:名無しさん@そうだ選挙にいこう
09/01/27 23:39:03
>>98
モニターを買い換える
101:名無しさん@そうだ選挙にいこう
09/01/28 08:04:10
>>100
同じインチ数の、若しくは画面サイズはすこし大きいがワイド画面を(ry
102:98
09/01/28 08:16:33
>>99
ありがとうございます。
全画面はちょっとあれなんですが、開くときにサイズ変えてやればいいんですね。
>>100
それはちょっと・・・
103:名無しさん@そうだ選挙にいこう
09/01/28 15:03:01
DAOを使うときのrs変数の宣言場所なんですが何処が理想なんでしょうか?
自分の場合、検索条件入力画面→明細表示画面(ソート機能付き)というのを作った場合、
外部変数(ex_rs)として1つ宣言。あとソートボタンがおされた時にそのプロシージャ内でローカル宣言(l_rs)後、
Set l_rs = ex_rs
l_rs.sort = "XXXXX"
set rs = l_rs.OpenRecordset
set Me.OpenRecordset = l_rs
me.Requery
set l_rs = nothing
という風にやってます。
同じよな機能を実装する場合、皆さんも上記のような感じになりますか?
104:名無しさん@そうだ選挙にいこう
09/01/28 15:10:58
Access2003
レポートのテキストボックスで、日付型フィールドに連結しているのがある。
値がNULLのとき「---」と表示し、
日付の値のとき「H12/03/04」などと表示するようにしたい。
カスタム書式でなんとかならんかに
105:名無しさん@そうだ選挙にいこう
09/01/28 15:13:01
>>104
> レポートのテキストボックスで、日付型フィールドに連結しているのがある。
106:名無しさん@そうだ選挙にいこう
09/01/28 15:18:08
1日24時間、時間ごとのデータを4カ所入力するとき、エクセルのフィル
みたいにあらかじめ年月日時間を入れておいてから、データだけをキー
ボードから入力したい。初歩の初歩ですがそのやり方が全く分からない。
その都度年月日と時間を入力しないでいい方法を教えてください。
107:名無しさん@そうだ選挙にいこう
09/01/28 15:27:01
>>104
クエリでiif使えば万事解決
↓クエリに追加
日付表示:iif(isnull([日付])=True,"---",[日付])
日付表示のテキストボックスの書式に
ge/m/d
108:名無しさん@そうだ選挙にいこう
09/01/28 15:55:38
ごめん >>107 だと
ge/m/d が反映しないな 2009/01/28 になってしまう
どうしても「H12/03/04」じゃないとだめなの?
109:名無しさん@そうだ選挙にいこう
09/01/28 16:39:16
>>107 Accessスレはレス早いな。ありがたし。
クエリーにした。
>日付表示のテキストボックスの書式に
>ge/m/d
こうするとなぜか西暦になったのでクエリー式でFormat$した。
110:名無しさん@そうだ選挙にいこう
09/01/28 16:40:31
げ。108見落とし。重ね重ねありがたし。
111:名無しさん@そうだ選挙にいこう
09/01/28 16:43:02
>>103
自分は db や rs をなるべく直前に開いて直後に破棄するようにしています。
その方が不慮の強制終了が発生した時にデータ破損のリスクが低くなるような…?
あと2画面を遷移させるのが好みではないので、ヘッダに検索条件入力を装備した
明細表示画面を作ると思います。そうしておいて検索条件やソート条件を変更後、
[表示]ボタンでフォームのRecordSourceに必要なSQL句を再セットしちゃいます。
ソートの度にクエリが実行されるので速度的には不利なんでしょうが面倒が無いのでw
>>104
テキストボックスのコントロールソースを見るとフィールド名が設定されていると
思うのですが、これを細工すれば可能です。(>>107-108さんとは別の方法として…)
(元)hoge
(改)=IIf(IsNull([hoge]),"---",Format([hoge],"ge/mm/dd"))
>>106
入力用のフォームを作って、日付入力をするテキストボックスの[定型入力]を
設定すればできるようになります。
112:名無しさん@そうだ選挙にいこう
09/01/28 20:14:28
>>103
rs変数って何?
こんなん普通は通じないよ
別にa変数でも良いわけだし
AccessではよくRecordsetオブジェクトの変数名に
rsがよく使われるから雰囲気で通じてるだけ
113:名無しさん@そうだ選挙にいこう
09/01/28 20:24:38
なんだこいつw
114:名無しさん@そうだ選挙にいこう
09/01/28 20:42:02
何かしらんが>>112、必死だなww
115:名無しさん@そうだ選挙にいこう
09/01/28 20:44:17
Access2002のはがきウィザードでレポートを作ったんですが、
あて先にマンション名などを入れると、町番の前という変な位置で
改行されます。
~~県~~市~~町
1-1-1~~マンション
という具合です。
どうにかなりませんでしょうか?ウィザードでは住所1にしか
設定していません。マンションはテーブルの別フィールドに
しないとダメですかね?
116:名無しさん@そうだ選挙にいこう
09/01/28 20:58:58
>>104
書式に「ge/mm/dd;;;---」だけでいいんじゃね。
117:名無しさん@そうだ選挙にいこう
09/01/28 23:44:56
「文字列優先項目設定」機能について(桐9-2009aで追加)
電話番号や郵便番号のように、「ゼロ(0)」で始まる数字で構成されているデータをExcelに変換すると、Excelが自動的に数値としてデータを変換し、ゼロが失われてしまいます。
このような場合は、[Excelファイルの書き出し]画面の「文字列優先項目設定」機能を利用して「数字を文字として処理するよう」に設定することで回避することができます。
(「文字列優先項目設定」機能については、「質問と回答」のこちらをご覧ください。)
※指定した項目のデータは、「文字列式(="<値>"の形式)」で変換されます。
118:103
09/01/29 10:00:49
>>111
(いつも?)ありがとうございます。
大変参考になりました。
119:名無しさん@そうだ選挙にいこう
09/01/30 18:48:45
Access2000 から 2007に移行してmdbもaccdbへ変換して場合、
ネットワーク共有時の検索速度が改善されるでしょうか?
今mdbで超遅くて困ってます。
120:名無しさん@そうだ選挙にいこう
09/01/30 21:14:25
>>119
妙な期待はしないでください
121:名無しさん@そうだ選挙にいこう
09/01/30 22:48:19
ほとんどmdbしか使ってないな。
Word、Excelなどと違って古いAccessで2007形式読めないし
これといって目に見えたメリットがない。
122:名無しさん@そうだ選挙にいこう
09/01/31 00:02:07
>>119
2007のネットワーク共有では速度は特に改善されません。
メリットとしては SharePoint と統合できる点でしょうか。
URLリンク(office.microsoft.com)
もし現行の mdb に於いて、抽出に使用するフィールドのインデックスが
作成されていないようでしたらインデックスを作成して様子を見てください。
それでも検索速度に不満でしたら SQL Server の導入を検討しましょう。
123:名無しさん@そうだ選挙にいこう
09/01/31 09:31:00
>>119
設計自体変えない限り期待薄。
どうせ変えるならSQL鯖に移行した方が幸せになれると思うけど。
124:119
09/01/31 11:01:30
みなさんありがとうございます。
速度の改善は無いのですね。
SQL Serverへの移行が結局一番まともな方法と言う事ですね。
ちなみに、mdbをネットワーク共有して使っているのですが1台で使うだけなら
遅くないのに、2台以上で使うといきなり遅くなるのはmdbの問題より設計の
問題の方が原因は大きいですか?
125:名無しさん@そうだ選挙にいこう
09/01/31 11:14:18
クドイなコイツ
126:名無しさん@そうだ選挙にいこう
09/01/31 12:43:41
>>124
処理速度の問題は何がボトルネックになっているのかを見極めなくてはなりません。
例えば「ホームページの閲覧が遅い」という場合でも関連する要素はたくさんありますし、
同じようにファイル共有したmdbの処理が遅い場合でも考慮すべき点はたくさんあります。
一般論として、あるテーブルに関するクエリを実行する際に
・Accessではインデックスがあればインデックスがネットワークを流れる
・Accessではインデックスが無ければテーブル全体がネットワークを(ry
・SQL Serverではクエリの結果だけがネットワー(ry
というような違いがありますが、ファイルサーバーが強力でネットワークが鬼速なら…
(以下、スレ違いにつき省略しますね)
127:119
09/01/31 13:20:01
>>126
単純な話ではないという事ですね。ありがとうございました。
>>125
ごめんね
128:名無しさん@そうだ選挙にいこう
09/01/31 16:25:43
自分のマシンで作ったmdbに、ネットワーク環境にあるmdbからテーブルをリンクさせると、
リンクテーブルだけでなく全てのテーブルが開くのに時間がかかってしまいます。
回避策はありますか?
129:名無しさん@そうだ選挙にいこう
09/01/31 16:48:06
>>128
あなたのPCで作ったmdbを、ネットワーク先のPCにコピーする
130:名無しさん@そうだ選挙にいこう
09/01/31 16:54:48
>>128
もしかしたら、これかな?
Access 2002、Office Access 2003、および Office Access 2007 のリンク テーブルでパフォーマンスが低下する
URLリンク(support.microsoft.com)
テーブルのサブデータシート名のプロパティが既定値の[自動]のままだと開くのが遅くなる。
131:名無しさん@そうだ選挙にいこう
09/01/31 17:27:19
レスありがとうございます。
>>129
複数人でネットワーク上のデータを共有し、データの加工は自分の端末で行いたいので、
それはできません。
>>130
リレーションシップは設定していないのですが、その場合も影響があるでしょうか?
132:名無しさん@そうだ選挙にいこう
09/01/31 21:02:47
ランタイムで起動させた時にタスクバーのタイトル名が空欄なのは何故?
ランタイムはファイル名表示できない仕様ですか?
133:名無しさん@そうだ選挙にいこう
09/01/31 21:21:38
>>132
Package Solution Wizard でタイトル指定しなかったの?
134:名無しさん@そうだ選挙にいこう
09/01/31 21:26:54
>>133
Package Solutionで指定できるんですか・・・
それ使ってパッケージ化すればADOの参照設定も指定できるかな。
ありがとうございます。
135:名無しさん@そうだ選挙にいこう
09/02/01 00:08:50
>>131
>126 さんとカブりますが、一口に遅いっつっても、ネットワーク経由で
デカいファイルをコピーしたら常識的にこれくらいはかかってもしょうが
ないよねって線と、明らかに異常って線があるでしょ。まずはそこを
切り分けたほうが良いのでは。
前者ならもう言われているように、サーバ型に移行しないと根本的に無理。
後者なら、サポート情報を徹底的に調べて、該当していたら回避策を
適用してみる。
下の技術情報の関連情報欄にパフォーマンス関連のリンク集があるから、
必要ならそこから当たってみてはどうですか。
URLリンク(support.microsoft.com)
136:名無しさん@そうだ選挙にいこう
09/02/01 00:16:35
>>135
リンクテーブルを開くのが遅いのは仕方ないと思ってますが、
リンクではない、ローカルのテーブルまで明らかに遅くなるんです。
リンクテーブルを追加するまではすぐに開いていたんですが…
とにかく調べてみます。ありがとうございました。
137:名無しさん@そうだ選挙にいこう
09/02/01 03:18:32
たしかローカルテーブルを開くときも、リンクテーブルをチェックしに行くよ。
Access2000の頃にどっかで読んだ。
クエリをリンクテーブル代わりに使って回避してたみたいだけど。
138:名無しさん@そうだ選挙にいこう
09/02/01 11:36:00
>>137
>クエリをリンクテーブル代わりに使って回避してたみたいだけど。
ここを詳しくお願いします。
テーブルを開くとき、直接開くのではなくクエリから開くということでしょうか?
139:名無しさん@そうだ選挙にいこう
09/02/01 14:08:28
>>128さん
まるで見当違いかもしれませんが、一連のお話をうかがっていると
Accessの問題ではなくネットワークの問題のような気がします。
共有リソースの名前解決に時間が掛かっているような…??
[ネットワークコンピュータ]でブラウズした時の動作は軽快でしょうか?
これが遅ければ>>136のような症状が出るのも納得できるのですが。
140:128
09/02/01 14:39:10
>>139
レスありがとうございます。
ネットワークコンピュータでブラウズとは、
リンクテーブルの置いてあるマシンでテーブルを開いてみる、ということでしょうか?
リンクテーブルの置いてある端末は同じ建物内にはないので
それを試してみるのは難しいです。
ネットワークは、確かに、移転やら何やらしてあまり良い状態とは言えません。
共有リソースの名前解決…
ここら辺は今の自分では手に負えない感じです。
141:名無しさん@そうだ選挙にいこう
09/02/01 15:11:23
>>140
(スレ違いなので小声でやりとりしてると思って下さいw)
同じ建物内ではないと聞いて、ますます名前解決の問題という念が強くなりました。
[ネットワークコンピュータ]→[全てのコンピュータ]→[コンピュータ名hoge]→[共有フォルダhoge]→[hoge.mdb]
この操作が軽快である事が必要です。(正しく設定されていればサクサク動きます)
問題が起きていた場合の解決方法はネットワーク環境に依りますので
[Windows 名前解決]でググってみてください。ヒントが沢山ヒットするはずです。
問題が早く解決するといいですね。
142:137
09/02/01 16:19:23
>>138
リンクテーブル自体を一切作成せず、クエリのSQL文にIn句を使って
外部テーブルを参照(事実上これがリンクテーブルの代わり)してた。
昔そういう事例があったのを見かけたというだけで、同じかどうかは
分かりません。試してみるなら、In句でググってみてはどうですか。
143:名無しさん@そうだ選挙にいこう
09/02/01 16:46:45
>>141
ご指摘の操作を明日試してみようと思います。
>問題が早く解決するといいですね。
ありがとうございます。
>>142
ググってみました。
こういう方法があるとは知りませんでした。
ありがとうございました。
144:名無しさん@そうだ選挙にいこう
09/02/01 19:51:35
>>142
横レス悪いけどそんな方法があるなんて知らなかった。
なんかリンクテーブルって大元のテーブルに変更があっても同期して変わってくれないから
いちいちリンクしなおすのがめんどくさいんだよね。
でもその方法ならそんな手間もなくなりそうだね。有益な情報をありがとう。
145:名無しさん@そうだ選挙にいこう
09/02/01 20:23:01
なんだよ2007のリボンって、邪魔なだけで意味ないんだけど
146:名無しさん@そうだ選挙にいこう
09/02/01 21:19:03
FFだと重要アイテムなのにな
147:名無しさん@そうだ選挙にいこう
09/02/02 10:22:27
Office 2003 Personal (OEM)と Office 2007 Standard アップグレードを持ってるんですが
この状態でAccess 2007のアップグレード版を使うことってできます?
>対象製品は、Microsoft Access 2000~2002、Microsoft Office Access 2003、
> 2000~2007およびXPバージョンのMicrosoft Officeスイート。
調べてみたら↑とあるんですが、Officeスイートに該当すると考えていいですか?
148:128
09/02/02 20:25:05
昨日はいろいろなアドバイスをありがとうございました。
今日試してみた結果を報告します。
[ネットワークコンピュータ]→[全てのコンピュータ]→[コンピュータ名hoge]→[共有フォルダhoge]→[hoge.mdb]
この操作自体は特に遅く感じられませんでした。
また、ネットワークドライブ上の共有mdbからテーブルを開く動作も
ローカルのmdbから開くのとは違ってすぐでした。
あと、>>137さんのIN句でクエリをリンクテーブル代わりにする方法ですが、
不思議なことにすぐ開くようになりました。ワークテーブルもです。
どうしてこのような現象が起こるのか理解しきれない部分はありますが、
回避策が見つかって助かりました。
ありがとうございました。
149:名無しさん@そうだ選挙にいこう
09/02/03 00:12:19
>>148
>>130 は試さなかったの?
150:名無しさん@そうだ選挙にいこう
09/02/03 02:04:09
いま会社のデータベースは97で運用しています。
最近VISTAのPCが入ったので97をインストールはできたのですが
テーブルからもデータを表示することができないです。
対処法としてどういった方法があるのでしょうか?
会社の他のパソコンはXPです。
151:名無しさん@そうだ選挙にいこう
09/02/03 03:10:15
>>147
出来ない。
そこに書いてあるOfficeはStandardじゃなくてProfessional版のことだね。
152:名無しさん@そうだ選挙にいこう
09/02/03 07:44:53
>>149
突っ込みどうもです。
今日試してみます!
153:名無しさん@そうだ選挙にいこう
09/02/03 18:41:00
>>150
Vistaで公式サポートされてるのは2003以降の筈。
XPのPCに2003or2007入れて変換したらいいんじゃない?
でもバージョン飛ぶからテーブルデータを除いた部分
(特にVBA周りとか)は正常動作しない可能性あるけど。
154:名無しさん@そうだ選挙にいこう
09/02/03 20:25:17
>>147
全く問題ナシ。インストールできるよー。
155:128
09/02/03 21:00:45
>>130を試してみましたので報告します。
参考に貼っていただいたurl先での説明には、原因として
>データベース内に多くのリンク テーブルが存在し、それらのテーブルに多くのリレーションシップが含まれていて、
とありますが、リレーションシップのあるなしは関係無いようです。
問題のmdbにはリレーションシップは一つも設定していませんが、
サブデータシート名を[自動]から[none]に変更すると、ワークテーブルに限り
すぐ開くようになりました。リンクテーブルには変化が見られませんでした。
なので、すべてのテーブルの動作を早くしたい場合にはIN句で、
ワークテーブルだけでよい場合にはサブデータシート名のプロパティを変更するのがお勧めです。
(↑環境によって違いがあるかもしれませんが…)
IN句を使うと、リンクテーブルマネージャで貼り替えできなくなるので、ちょっと注意が必要です。
どうもありがとうございました。
156:名無しさん@そうだ選挙にいこう
09/02/03 22:04:06
ひょっとしてaccdeに変換ってコンパイルエラー全部取らないとできない?
だとしたら苦行すぎる・・・。
157:名無しさん@そうだ選挙にいこう
09/02/03 23:22:12
2007を持っていないからよくわからんが、
コンパイルエラーがでるものなんか怖くて使えない。
俺だったら、まず最初に潰すエラーだけどな。
論理エラーより見つけるのが簡単だし。
158:名無しさん@そうだ選挙にいこう
09/02/04 17:12:48
曖昧検索をクエリの抽出条件に入れて、データの検索をするフォームを作成してます。
検索フォームのテキストボックスの文字列から、クエリの抽出条件になるようにし、曖昧検索かつブランク時は全部抽出
するようにしてます。
検索ボックスが少ないとうまくいきますが、五つくらいになると「クエリが複雑」となりました。
何か良い方法はないでしょうか。
最終的には10くらいの複数キーワードもしくはチェックボックスで検索したいです。
159:158
09/02/04 17:18:06
失礼しました。テンプレも見てませんでした。
OSはXPでアクセス2000です。
VBAは、ちょっぴりだけ分かります。(非常に簡単な文のみ理解出来ます)
超初心者ですが、ググりながらなんとか曖昧検索の概念は理解できました。
クエリが複数、で調べましたが対処方法がまだ見つかりません。
よろしくお願い致します。
160:名無しさん@そうだ選挙にいこう
09/02/04 21:48:22
複数のクエリは必要なくない?
一つのクエリにOrで10個条件指定する
161:158
09/02/04 22:06:03
複数クエリは不要…なんですか?
今やりたいのは、例えば
●顧客名
●案件名
●処理内容
…
など、検索フォームに複数の検索ボックスがあります。
顧客名の検索ボックスに入った文字列を、データテーブルの「顧客名」フィールドから抽出するために、「顧客名」フィールドの抽出条件を、『検索フォームの顧客名ボックスのテキストで曖昧検索もしくはテキストがブランクの場合』としています。
同様に、「案件名」フィールドのデータを抽出したいなら、そのフィールドの抽出条件を顧客名と同じように設定しなくては出来ないと思ったんですが…
162:158
09/02/04 22:22:45
すみません、我ながら分かりづらいのでPCから書き直します。
【既にあるもの】
・案件一覧テーブル(案件番号(主キー)、顧客名、顧客住所、案件概要、処理方法、担当部署、担当者氏名、苦情の有無・・・等30項目)
・案件一覧のデータすべてを配置したフォーム
・検索用フォーム(案件番号、顧客名、顧客住所、案件概要、処理方法 という5つのテキストボックスあり)
【やりたいこと】
・クエリで、案件一覧テーブルから案件番号、顧客名、案件概要、処理方法等、主要な部分を10つ抜き出す。
・そのクエリの案件番号、顧客名、顧客住所、案件概要、処理方法というフィールドには抽出条件を入れることにより、
検索フォームのテキストボックスのテキストを元に、あいまい検索をしたい。
【やったこと】
クエリが以下のようになってます。
案件一覧テーブル 案件一覧テーブル
案件番号 顧客名
抽出条件なし Like "*" & [Forms]!フォーム名!テキストボックス名 & "*" or [Forms]!フォーム名!テキストボックス名 is null
※顧客名以外のフィールドも同様です
【結果】
4つほどでは、うまく行きました。あいまい検索もでき、検索用のフォームのテキストボックスにテキストがない場合は
全抽出してくれます。
5つになると、複雑すぎて出来ないといわれました。。。
163:150
09/02/04 22:39:01
ACCES2007を入れてみたのですが、開く権限がないので開けません。
みたいな文章がでます。
旧バージョンを開く時はデータベースを使用可能にするとのことらしいのですが、
具体的にどのようにすればよろしいのでしょうか?
164:名無しさん@そうだ選挙にいこう
09/02/04 22:51:26
オプションのセキュリティーセンターだかなんかで
マクロのセキュリティーを低くすればいいかな
165:名無しさん@そうだ選挙にいこう
09/02/04 23:26:17
>>162
条件式、そこはOrじゃなくてAndじゃない?
Orで結ぶのはフィールドごとの条件。
>Like "*" & [Forms]!フォーム名!テキストボックス名 & "*" or [Forms]!フォーム名!テキストボックス名 is null
Like "*" & [Forms]!フォーム名!テキストボックス名 & "*" And Not [Forms]!フォーム名!テキストボックス名 Is Null
さらに、全検索地が空欄の場合に全レコードを出したいなら、
式1:IIF(すべてのテキストボックスが空欄, False, True)というフィールドを
クエリに追加して、 式1=True を他のフィールドの条件と Orで結ぶ。
166:名無しさん@そうだ選挙にいこう
09/02/04 23:36:36
>165さん
条件式はand ですか? orではなく??
データ入力ミスがある場合があり、たとえば担当部署がブランクの場合もあります。
ですので、こちらのイメージは、すべての抽出条件に「検索フォームのテキストであいまい検索する or ブランクのときも検索する」とすれば
<顧客名をブランクにして、担当部署にAというテキストを入れると>
顧客名がブランク(入力ミス)であっても、担当部署がAであればすべて抽出できる
というイメージでした。
or [Forms]!フォーム名!テキストボックス名 is null を抽出条件に入れてないと、
<顧客名をブランクにして、担当部署にAというテキストを入れると>
顧客名がブランクでないもので、担当部署がAのものがヒットする → 顧客名に入力ミスがあったものはヒットしない
と言うことになりました。
全検索値がブランクの場合でも、もちろん全レコード出したいのですが、上記のようなことをしたいのです。
Andで大丈夫でしょうか?
(すみません、会社にあるアクセスのため、現在試してみることができません)
167:名無しさん@そうだ選挙にいこう
09/02/05 00:01:47
>>166
どう説明すればいいのか、難しいんだけどやってみればわかるw
「入力漏れがあった場合には、そのフィールドにフィルターをかけない」と考えるとわかりやすいかも。
つまり、フィールドの条件が入力されている場合にだけ、フィルターをかける。
だからAnd。
気をつけて欲しいのは、Andの後は Is Null ではなく Not Is Null。
あとは、検索地がまったく入力されていない場合に全件抽出されるように 式1=True を付け加える。
168:名無しさん@そうだ選挙にいこう
09/02/05 00:11:06
クエリをデザインビューでみると構成はこんな感じ。
式1:式1:IIF(すべてのテキストボックスが空欄, False, True)
式2:Like "*" & [テキストボックス] & "*" And Not [テキストボックス] Is Null
項目1 項目2 項目3 項目4 …… 式1
式2
式2
式2
式2
・
・
・
True
169:名無しさん@そうだ選挙にいこう
09/02/05 00:14:34
一つの条件につき一つクエリを作ってUnionするのがわかりやすいかも。
170:名無しさん@そうだ選挙にいこう
09/02/05 00:14:42
何となく分かってきました!
他条件とORで結ぶ、つまり五個の他条件があれば、五行になるんですよね?
また、調べていたんですが、NZを使うのもありですか?
171:名無しさん@そうだ選挙にいこう
09/02/05 00:21:19
>>170
そうですそうです。
NzでNullを空文字指定すると、そのフィールドを全件引っ掛ける。すると
他条件とは Or で結ばれているので、一つでも未入力のボックスがあると常に全件抽出されてしまう。
たしかにNzを使うとシンプルになりそうなんだけど…。
うまい設定方法を思いつかない。
172:名無しさん@そうだ選挙にいこう
09/02/05 00:30:58
NZを使って、一行に条件を書く(AND)のはだめでしょうか?
あと、最初に書いたやり方(抽出条件を、テキストボックスの文字 OR テキストボックスがNULL)でも4つほどの項目ではうまくいきましたが、本当はダメ?これは、一行にすべて書きました。
173:名無しさん@そうだ選挙にいこう
09/02/05 00:40:03
すみません、そういえば、最初のやり方でやった場合、一度クエリを閉じて開き直すと、一行に書いたはずの条件がすごい行になってました。
アクセスが他のフィールドとORでそれぞれ結び付けてくれたみたいです。
何となく分かって来ました。みなさんありがとうございます!!
174:名無しさん@そうだ選挙にいこう
09/02/05 00:43:12
あー、フィールドごとの条件はOrで結ぶのだと思ってた。
Andで抽出だったんだね。
それならNzで一行にして大丈夫なはず。
最初のも条件の書き方としては大丈夫だと思う。
175:名無しさん@そうだ選挙にいこう
09/02/05 00:54:23
はい、書き方悪くてすみません。
つまり、担当部署がAでかつ、顧客名にドラえもんを含むデータというイメージです。さらに他条件がブランクなら、入力漏れも含めてヒットさせたいんです。
検索条件… 担当部署=A、顧客名=ドラえもん
検索結果…案件番号×××、担当部署A、顧客名ドラえもん、処理内容ブランク…
(ANDなので担当部署Bはヒットしない)
こんな感じに…
176:名無しさん@そうだ選挙にいこう
09/02/05 11:00:47
Access2007テキストインポートでxmlスキーマエラー出て、どうしようもなかったんだけで
いつの間にか直ってる
WindowsVISTAの自動更新で直った模様
177:名無しさん@そうだ選挙にいこう
09/02/05 11:25:48
1明細2段表示の明細フォームで、コマンドボタンを押したとき、
下段の項目を非表示にして、明細行の高さを1段表示ぎりぎり(解除コマンド押下で逆その逆)に
したいのですが、うまくいきません。
以下のようなコーディングです。
me.下段の項目1.visible = false
me.下段の項目2.visible = false
me.下段の項目3.visible = false
me.詳細.height = XX
XXを0にしても下段のフィールドが意識されてるような高さの狭まり方になります。
どなたかご教授ください。
xp sp2 access2003 vba可です。
178:177
09/02/05 13:06:01
自己解決しました。項目自体の高さを低くして対応しました。
もっとスマートな方法があれば教えて下さい。
179:名無しさん@そうだ選挙にいこう
09/02/05 23:37:16
明日目が覚めると自己解決するかも?
180:名無しさん@そうだ選挙にいこう
09/02/06 14:46:37
簡単な顧客管理を作成して、LAN対応の外付けハードディスクから複数の人が使用できるように
してるんですが、1台のPCだけから他人が開いていると開けない状況が発生してこまっています。
ファイアーウォールとかその辺あたりの問題と思っていろいろ調べているのですが、
まだ解決していません。なにか参考になるようなことが有れば教えていただけないでしょうか?
環境は全て、xp sp2 access2003です。
181:名無しさん@そうだ選挙にいこう
09/02/06 17:38:46
access2007を使ってます。
検索や置換の入力欄に、検索や置換をしたい言葉をペーストするにはどうしたらいいですか?
元々貼り付ける等の操作ができないのでしょうか?
182:名無しさん@そうだ選挙にいこう
09/02/06 17:47:18
Ctrl + V
183:名無しさん@そうだ選挙にいこう
09/02/06 17:54:18
>>180
さまざまな原因が考えられます。
試しに、[Access 他のPCから開けない] でググってみたところ参考になりそうなページが
多数ヒットしましたよ。 1つずつチェックしてみてはどうでしょうか?
184:名無しさん@そうだ選挙にいこう
09/02/06 17:58:46
セル内のテキストをコピーして検索の入力欄に貼り付けたのに、
検索しても引っかからないのはなぜでしょう?
185:名無しさん@そうだ選挙にいこう
09/02/06 18:07:53
>>184
末尾に改行コードが入っちゃってるのかも。。。
186:名無しさん@そうだ選挙にいこう
09/02/06 18:16:37
短い単語なら検索に引っ掛かりました。
検索入力欄の文字数(バイト数)制限などがあるのでしょうか?
187:名無しさん@そうだ選挙にいこう
09/02/06 18:23:36
あと、複数の行に同じ数値を貼りつけるといった、エクセルでよくやるような操作は、
accessではどのように操作したらできるでしょうか。
188:名無しさん@そうだ選挙にいこう
09/02/06 19:25:33
>>187
そういうのは桐にしとけ
もしくは、検索と置換のダイアログで我慢
189:名無しさん@そうだ選挙にいこう
09/02/07 10:50:38
2007 でもクエリやフォームの設計をみれないように保護することはできないんですかね?
190:名無しさん@そうだ選挙にいこう
09/02/07 11:08:55
>>189
出来るよ
191:名無しさん@そうだ選挙にいこう
09/02/07 12:37:15
>189 は桐にしとけって。
192:名無しさん@そうだ選挙にいこう
09/02/07 17:47:39
別に2003でも可能じゃないのか
193:名無し変更議論中@詳しくは自治スレへ
09/02/08 21:22:22
2000でも
194:名無し変更議論中@詳しくは自治スレへ
09/02/08 23:19:23
2002 だったかで昔試したことあるけど
データベースのインポートで全部見れちゃうようになったように思う
2002の本みながら 2007 使って復習してるんだが
URLリンク(tsware.seesaa.net)
これでかなりつまづいてしまった。
うまく動かせてる人いる?
たとえばフォームで入力/選択されたのをwhere条件にしてレポート開くとかが
うまくできないんだけど。
俺がよくわかってないからなだけかもしれんけど。
195:名無し変更議論中@詳しくは自治スレへ
09/02/08 23:40:06
>>194
> 2002 だったかで昔試したことあるけど
> データベースのインポートで全部見れちゃうようになったように思う
何もせずにそのままならインポートされちゃうのは当たり前だろ
> たとえばフォームで入力/選択されたのをwhere条件にしてレポート開くとかが
> うまくできないんだけど。
Private Sub cmdOpenReport_Click()
If Me.Filter = "" Then
MsgBox "Apply a filter to the form first."
Else
DoCmd.OpenReport "rptCustomers", acViewReport, , Me.Filter
End If
End Sub
196:名無し変更議論中@詳しくは自治スレへ
09/02/09 01:11:41
とっても単純なことかもしれませんが、クエリで自レコードを参照することはできないでしょうか?
具体的には、フィールドに入力する際のルックアップ(コンボボックス)で、入力中のレコードの他フィールドの値を検索条件にしたいです。
未入力の場合の例外とかは特に考えなくてかまいません。
197:名無し変更議論中@詳しくは自治スレへ
09/02/09 19:08:14
テーブルのルックアップでは多分無理でしょうね(未確認だけど)
どうせ入力はフォームでやるんだからフォーム上のコンボボックスのソースの中の
クエリの条件部分に編集中のテキストボックスを指定してやればできるんじゃないの
(確認はしていないので自分で試してみてね)
198:名無し変更議論中@詳しくは自治スレへ
09/02/10 13:47:41
SQLでクエリ作った時、構文を読みやすい様に整えて書いたのに、一旦閉じるとぐちゃぐちゃになるのは止めて欲しい……
199:名無し変更議論中@詳しくは自治スレへ
09/02/10 21:02:21
>>198
あれマジでむかつくな
200:名無し変更議論中@詳しくは自治スレへ
09/02/10 22:18:15
SQL文で直接入力するときって、その方法でしかできない場合が多いから改行とかスペースとか
の状態が保存されないと保守が面倒なんだよな
何度もバージョンアップしてるんだから、リボンなんかよりそろそろ何とかしてくれてもいいんじゃないの?
201:名無し変更議論中@詳しくは自治スレへ
09/02/10 23:53:51
>>200
俺なんか編集用のためだけにテキストファイルに整形したSQL残してる
ホント何とかしてほしい
202:名無し変更議論中@詳しくは自治スレへ
09/02/11 08:28:10
俺はデザインビューでしか作らないから気にならない♪
203:名無し変更議論中@詳しくは自治スレへ
09/02/11 09:29:59
FROM (((Table1 LEFT JOIN Table2) LEFT JOIN Table3) LEFT JOIN Table4) ※ON句省略
みたいにJOINするたびに括弧で囲まなきゃいけないのをなんとかして欲しい。
SqlServerだとこんなことしなくていいのに・・・
204:名無し変更議論中@詳しくは自治スレへ
09/02/11 13:41:23
Accessはデザインビューで簡単にSQLが作れるのが売りなんだろうけど、SQL文直打ちも前提に作られていないんじゃ
かゆいところに手が届かなくて今一歩ですね
(そういう点ではやはり桐はかゆいところに手が届くソフトなんだよな)
205:名無し変更議論中@詳しくは自治スレへ
09/02/11 14:38:47
アクセスでは開発の基本機能を提供していますので、ユーザーが御自分で工夫してください
>>203
御自分で、VBA組んで文字列生成してください
>>204
御自分で、孫の手を購入してください
206:名無し変更議論中@詳しくは自治スレへ
09/02/11 16:41:38
うーん普通の孫の手のでは背中くらいしかかけないんだよね
孫の手のソフトがあれば買うと思うんだけどなぁ
207:名無し変更議論中@詳しくは自治スレへ
09/02/11 21:42:16
アクセス欲しいんだけど
ヤフオクで以外と高いし、ヤフオクで買ったことないから
不安だしいやだ。
会社のシステム変わるからマジで勉強しとかないとやばい。
ちなみに会社のアクセスは2000です。
どうしよお…
208:名無し変更議論中@詳しくは自治スレへ
09/02/12 00:05:08
>>207
会社のシステムが変わるんなら、他の人はどうしてるんでしょう
みんなは扱えるんですかね
209:名無し変更議論中@詳しくは自治スレへ
09/02/12 09:04:18
会社のアクセスをコピればOK
210:名無し変更議論中@詳しくは自治スレへ
09/02/12 13:30:33
2000まではアクティベーションがないからいけるな
211:名無し変更議論中@詳しくは自治スレへ
09/02/12 19:03:42
>>209
どうやってコピーするんですか?
うちの会社大手電機だからコンプライアンス違反すると
やばそうなんだけど…
212:名無し変更議論中@詳しくは自治スレへ
09/02/12 19:12:40
個人でこそこそやる分には自己責任だからいいが
公的な場であんまり違法行為をすすめるなよ
>>211 も真に受けるな
本当に困っているなら迷う前にさっさと買って勉強に励め
213:名無し変更議論中@詳しくは自治スレへ
09/02/12 19:30:25
>>211
VL版なら、そのままimgで持ってこい
個別ライセンスなら、1ライセンスに3CPUまでアクチできるから大抵は口数余ってるだろ
214:名無し変更議論中@詳しくは自治スレへ
09/02/12 20:28:06
>>211
Access2000のCD-ROMを普通にCD-RにコピーしたものとライセンスキーもメモってくればOK。
あとは家のPCに普通にインストールできる。今まで外注で5つぐらいのソフトウェア会社を回ったけど
どこもコピーしまくりだったよ。おかげで俺も簡単にコピーに手を染めるようになったよw
215:名無し変更議論中@詳しくは自治スレへ
09/02/12 21:22:39
こいつら...
216:名無し変更議論中@詳しくは自治スレへ
09/02/13 11:13:17
てゆうか本当に自宅でも必要な仕事なら、
自宅用のライセンスキーを会社が買ってくれるんじゃね?
217:名無し変更議論中@詳しくは自治スレへ
09/02/13 11:31:37
1ライセンスで同一人物が会社と自宅で使用したらダメなのか?
218:名無し変更議論中@詳しくは自治スレへ
09/02/13 13:15:48
法人ライセンスは判らないが、MS-Office の個人ライセンスなら、
デスクトップとモバイルマシン両方に入れられるというものだったはず。
219:名無し変更議論中@詳しくは自治スレへ
09/02/13 18:36:36
★ WinXP SP3、ACCESS2003
★ フォームにクエリの結果を表示したときに、
【通常の表示】
PCID パソコン名 LANカード サウンドカード・・
1 PC1号 有 無
2 PC2号 無 有
3 PC3号 無 無
・・・
と表示されますが、その表示を、行と列を入れ替えて、
【希望する表示】
PCID 1 2 3
パソコン名 PC1号 PC2号 PC3号
LANカード 有 無 無
サウンドカード 無 有 無
・・
みたいにできますか?
・何がしたいのか
社員が管理しているPCの情報を管理しようと思って、ACCESS2003を使い始めて
三日目なのですが、1社員あたりせいぜい多くても5台くらいしか持っていませ
んが、一方、PCのオプションは、LAN、Sound以外に、10数種類くらいあるので、
表示を見やすくしたいのです。
220:名無し変更議論中@詳しくは自治スレへ
09/02/13 18:41:59
できます
221:名無し変更議論中@詳しくは自治スレへ
09/02/13 18:53:51
>220
サンプルのmdbを俺に送ってくれ
222:名無し変更議論中@詳しくは自治スレへ
09/02/13 18:56:56
ふじ子に送りますた
223:名無し変更議論中@詳しくは自治スレへ
09/02/13 19:03:35
ヒント教えてくれよ。
VB使うのか?
224:名無し変更議論中@詳しくは自治スレへ
09/02/13 19:05:42
>>223
クロス集計クエリ
225:名無し変更議論中@詳しくは自治スレへ
09/02/13 19:15:34
>224
今試してみたが、行として選択できるのは三つまでってメッセージが出ている
ぞ。
226:名無し変更議論中@詳しくは自治スレへ
09/02/13 19:22:30
早くヒント教えてくれよ。
今日中に作らないと、しばかれるんだよ。
227:名無し変更議論中@詳しくは自治スレへ
09/02/13 19:42:21
>>226
クロス集計クエリ
228:名無し変更議論中@詳しくは自治スレへ
09/02/13 20:14:44
>>226
ほい。Access神のHP。
URLリンク(pub.ne.jp)
229:名無し変更議論中@詳しくは自治スレへ
09/02/13 21:06:52
>>216-218
ソフトウェアアシュアランスなら自宅のPCにインストールして使う事も可能。
高いけどな。
230:名無し変更議論中@詳しくは自治スレへ
09/02/13 21:18:36
桐なら転置書き出しで一発なんだが…
231:名無し変更議論中@詳しくは自治スレへ
09/02/13 21:34:07
クロス集計を幾つか作って結合すりゃ簡単だろ
232:名無し変更議論中@詳しくは自治スレへ
09/02/14 08:16:30
>231
一晩試したが、まだできない。
もう少し詳しく教えてくれよ。
233:名無し変更議論中@詳しくは自治スレへ
09/02/14 08:29:00
もう、しばかれるの決定済みだから良いじゃん
234:名無し変更議論中@詳しくは自治スレへ
09/02/14 08:36:37
元のクエリが分からんとはっきりしないんだけど、もし
PCID パソコン名 備品 有無
グループ化 グループ化 グループ化 先頭
行見出し 行見出し 列見出し 値
こうなってるなら、
↓
[PCID]&[パソコン名] 備品 有無
グループ化 グループ化 先頭
列見出し 行見出し 値
こうすれば良いだけ
ちなみに列名を二行で表示するのは無理
235:名無し変更議論中@詳しくは自治スレへ
09/02/14 08:56:52
>234
さんきゅう。
でも、ACCESS始めて4日目なので、俺の頭では、解説してくれても
さっぱりわからない。だれかサンプル作ってどこかにuploadしてくれよ。
頼むよ。
236:名無し変更議論中@詳しくは自治スレへ
09/02/14 09:15:16
フォームの元になるクエリ(またはサブフォーム)を書き換えればイーンダヨ
フォームを開いて、左上の三角定規を押してみ。すると元になるクエリ名が表示されるはず。
そしたらフォームを閉じクエリビューに移って、該当クエリ→デザインで書き換えれば良い
他にどんな条件がくっついてるか分からんから、これで合ってるかどうか不明
下手するとぶっ壊れるから、mdbファイルのバックアップ取っておいてね
237:名無し変更議論中@詳しくは自治スレへ
09/02/14 09:41:10
>236
俺にはだめだ、さっぱりわからん。。。。。うーーーー
238:名無し変更議論中@詳しくは自治スレへ
09/02/14 09:59:35
そういうのは桐でやれよ
239:名無し変更議論中@詳しくは自治スレへ
09/02/14 10:01:13
そういうそれなりに高度なことをド初心者にやらせといて出来なきゃしばくってどんだけw
240:名無し変更議論中@詳しくは自治スレへ
09/02/14 10:33:21
ACCESSはあきらめて、EXECLとVBでやろうかな。
実は俺、VBは超得意なんだ。でもACCESSを断念するのは悔しい
241:今日はバレンタインデーか…
09/02/14 11:16:22
俺会社でこういうの頼まれてよく直してやってるけど
誰も助けてくれないとこんなに困る人が実際いるんだな
回答じゃなくてごめんね
242:名無し変更議論中@詳しくは自治スレへ
09/02/14 12:22:30
219ですけれど、クロス集計クエリっていうのを皆さんに教えてもらい
ましたが、これって、本当に私のやりたいことできるのでしょうか?
私は、要するに、行と列を入れ替えて表示したいだけなんですが。
一発で、そういうのできるコマンドみたいなのないんでしょうか?
こういう要望って、少なからずあると思うんですが、ACCESS2003には
そういう気の利いた機能はないのでしょうか???
243:名無し変更議論中@詳しくは自治スレへ
09/02/14 12:45:54
>>242
本来の使用法とは異なるのかもしれないが
行と列を入れ替えるのはクロス集計が一番スマートなやり方だと思う。
集計とついているからって、何もそれにこだわる必要はない。
要は応用力だと思うし、第一用意されている機能を使わないのは労力の無駄。
俺は滅多に使わないが。
244:名無し変更議論中@詳しくは自治スレへ
09/02/14 12:51:44
いま出勤したところ
後ろにいるあの娘がもしチョコレートくれたらrecordset開いて行列いれかえる
やり方教えてあげる
245:名無し変更議論中@詳しくは自治スレへ
09/02/14 12:55:10
キモヲタの224には期待するな
246:名無し変更議論中@詳しくは自治スレへ
09/02/14 12:55:32
よし、期待せずに待ってるぞ
247:名無し変更議論中@詳しくは自治スレへ
09/02/14 12:59:45
会社だったら義理チョコぐらいもらえるだろう(土日が休みなら月曜という可能性も捨てがたいが)。
よかったな、219。
248:名無し変更議論中@詳しくは自治スレへ
09/02/14 13:03:01
>>245
関係ない>>224涙目w
249:名無し変更議論中@詳しくは自治スレへ
09/02/14 13:10:52
>>247
219?
250:名無し変更議論中@詳しくは自治スレへ
09/02/14 13:12:54
>>249
>>242の冒頭に219って自己紹介してあるの…
251:250=247
09/02/14 13:18:16
あっもしかしてバレンタインの件?
そっちじゃなくてクロス集計に疑問を持った219に
別のやり方を教えてくれる人が現れたから。
だから247は間違えたわけではないよ。
252:名無し変更議論中@詳しくは自治スレへ
09/02/14 13:39:17
>>251
おk
253:名無し変更議論中@詳しくは自治スレへ
09/02/14 14:33:44
意外と人居るんだな
「土 曜 の バ レ ン タ イ ン デ ー な の に」
254:名無し変更議論中@詳しくは自治スレへ
09/02/14 15:37:37
>>242
SQLでゴリ押しでやる方法もある。ただしPCの台数が決まってる場合に限る。
まず>>219の情報が「テーブル1」というテーブルに保存されていたとしたら
↓のSQLで要望の表示になる。ただし普通は絶対こんなことせずにRecordSet回すけどね。
(今日はめっちゃ暇だったんで書いてみたw)
SELECT PC1_Info.Dat, PC2_Info.Dat, PC3_Info.Dat
FROM ((
SELECT PC1.JoinKey, PC1.Dat
FROM (
SELECT 1 AS JoinKey, CSTR(PCID) AS Dat FROM テーブル1 WHERE PCID = 1
UNION ALL
SELECT 2 AS JoinKey, パソコン名 AS Dat FROM テーブル1 WHERE PCID = 1
UNION ALL
SELECT 3 AS JoinKey, LANカード AS Dat FROM テーブル1 WHERE PCID = 1
UNION ALL
SELECT 4 AS JoinKey, サウンドカード AS Dat FROM テーブル1 WHERE PCID = 1
) PC1
) PC1_Info
INNER JOIN (
SELECT PC2.JoinKey, PC2.Dat
FROM (
SELECT 1 AS JoinKey, CSTR(PCID) AS Dat FROM テーブル1 WHERE PCID = 2
UNION ALL
SELECT 2 AS JoinKey, パソコン名 AS Dat FROM テーブル1 WHERE PCID = 2
UNION ALL
SELECT 3 AS JoinKey, LANカード AS Dat FROM テーブル1 WHERE PCID = 2
UNION ALL
SELECT 4 AS JoinKey, サウンドカード AS Dat FROM テーブル1 WHERE PCID = 2
) PC2
) PC2_Info
ON PC1_Info.JoinKey = PC2_Info.JoinKey )
255:名無し変更議論中@詳しくは自治スレへ
09/02/14 15:38:49
>>254の続き
INNER JOIN (
SELECT PC3.JoinKey, PC3.Dat
FROM (
SELECT 1 AS JoinKey, CSTR(PCID) AS Dat FROM テーブル1 WHERE PCID = 3
UNION ALL
SELECT 2 AS JoinKey, パソコン名 AS Dat FROM テーブル1 WHERE PCID = 3
UNION ALL
SELECT 3 AS JoinKey, LANカード AS Dat FROM テーブル1 WHERE PCID = 3
UNION ALL
SELECT 4 AS JoinKey, サウンドカード AS Dat FROM テーブル1 WHERE PCID = 3
) PC3
) PC3_Info
ON PC1_Info.JoinKey = PC3_Info.JoinKey
※PCIDのみ数値項目と仮定したのでCSTRを使った。
256:244
09/02/14 16:06:04
いま不機嫌ですが何か?
「あたしたち」から、だって
257:名無し変更議論中@詳しくは自治スレへ
09/02/14 18:09:05
>>253
お楽しみは日が暮れてからだろ。
おれももう直ぐ出かけるよ
258:228
09/02/14 20:00:05
俺が教えたAccess神のHPは無視かい!
259:名無し変更議論中@詳しくは自治スレへ
09/02/14 21:32:19
怖くて誰も踏めんだろうによ。
260:219です
09/02/14 22:35:07
>254
うーーーーーー、感謝していますが、なんのこっちゃさっぱりわかりません。
そのSQLをどっかに張り付ければいいんでしょうか?
>258
HP見たんだけれど、みなさんが勧めてくれるクロス集計クエリではなかった
ので、あまり詳しく見ていません。
261:名無し変更議論中@詳しくは自治スレへ
09/02/15 00:05:01
つまりやる気がないと
262:名無し変更議論中@詳しくは自治スレへ
09/02/15 00:39:42
Microsoft Access 2000 を使っています。
SQLの勉強中なので、自分で打ち込んだSQL (selectとかcreate tableとか) を実行したいのですが、
Accessの中でそれらしい画面を見つけられませんでした。
自分で打ち込んだSQLを実行する方法ってありますか?
263:名無し変更議論中@詳しくは自治スレへ
09/02/15 00:47:28
>>258
Access勉強中なのでそういったサイト紹介はありがたいよ。
264:名無し変更議論中@詳しくは自治スレへ
09/02/15 00:53:52
>>262
桐を…
つか、Access使ってるんなら、クエリのデザイン画面からsql画面へ行って、
確認するもんじゃないの?
265:名無し変更議論中@詳しくは自治スレへ
09/02/15 00:57:14
>>262
クエリを新規作成するか開いて、
クエリウィンドウを右クリック(or メニューの表示を選択) SQL ビューを選択。
266:名無し変更議論中@詳しくは自治スレへ
09/02/15 01:11:06
それが分からないから質問しているんじゃないの
とりあえず新規でデザイン画面を呼び出したら、最初に現れる「テーブルの表示」を
すぐに閉じて、「表示(V)-SQLビュー(Q)」とメニューをたどるるかクエリのタイトルバー
を右クリックして、「SQLビュー(Q)」を選択すれば、直接SQL文を入力できる画面になります
また、AccessでSQL文を作ったり、現在の(デザイン画面で作った)クエリのSQL文を確認したいときにも
上記の方法で画面を切り替えることで確認できるので始めの内はデザイン画面で作ってあとで
それを元にSQL画面で調整するってな使い方が一般的だと思います
267:名無し変更議論中@詳しくは自治スレへ
09/02/15 01:12:40
あっ一つ前で既に答えられていましたね
268:262
09/02/15 01:27:07
>>264-267
皆様ありがとうございます。
SQLビュー、まさにこういう画面を求めていました。
ただ、画面を表示する手順から察するに、
これってクエリ作成に特化した機能っぽいですね。
一応 create table 等のSQLも実行できましたが。
できれば、いろんなSQLを実行してすぐに結果を見る、ということを繰り返したいのですが、
そういった機能 (VisualStudioで言うところのイミディエイトウィンドウ的なモノ) は
無い、というのが答えですかね?
269:名無し変更議論中@詳しくは自治スレへ
09/02/15 01:43:37
直ぐにビュー画面を呼び出せばいいだけじゃないの?
自分は利用したことはないですけど、マイクロソフトのページにいって
SQL Server のExpress Edition でもダウンロードして試してみたらどうですか
270:名無し変更議論中@詳しくは自治スレへ
09/02/15 01:45:29
ふつうにエディタがついてるんだから、
イミディエイトウィンドウ使えばいいんじゃないの?
271:名無し変更議論中@詳しくは自治スレへ
09/02/15 01:58:45
>>270
どういう事? VBEのコードウィンドウとイミディエイトウィンドウの事いってんのかな?
272:名無し変更議論中@詳しくは自治スレへ
09/02/15 02:02:10
ちがうのけ?
268が言ってるsqlってのが、アレだけどさ。
273:名無し変更議論中@詳しくは自治スレへ
09/02/15 03:43:35
>>268
Accessではテーブル操作とクエリ操作は別々の画面が用意されていますから
CREATE や DROP といったSQL句の実行結果をすぐに確認するには不便ですね。
その意味では「無い、というのが答え」になるかと思います。
Accessにこだわらないのであれば、要望にもっとも近いものはSQL Server 2000に
含まれていたクエリアナライザになるかと思います。(入手ができれば…ですが)
今でしたら無償の SQL Server 2008 Express with Tools はいかがでしょう?
これに含まれる SQL Server Management Studio Basic が使えるかと思います。
274:254
09/02/15 07:06:33
>>260
>>そのSQLをどっかに張り付ければいいんでしょうか?
SQLビューに貼り付けて実行すればいいんだよ。
SQLビューの表示方法はちょうど>>266さんが書いてくれてる。w
でもあなたは私の想像以上にシロウトさんだったようだからこの件は忘れてくれ。
多分実行できたとしても応用はできないと思う。
275:名無し変更議論中@詳しくは自治スレへ
09/02/15 18:38:16
>>196
桐にしとけ、30年前から普通の 表引き
もう古臭いんだけどなぁ、今だに秀逸なんだよな
276:名無し変更議論中@詳しくは自治スレへ
09/02/15 19:55:49
>>260
列数と行数がその程度であれば明らかにExcelでやるべきことだと思うんだけど、
Excelという選択肢はないの?
のちのち集計をしたりSQLServerへのアップグレードを考えなければ、
そういう文字列だけの管理にAccessを使うのはどうかと思うんだ。
>>268
素直にSQLServer2005Expressを入れたら?無料だし、お望みのことがすぐに出来るよ。
>>275
その桐にしとけっていうネタはいつまでやるの?もういい加減飽きない?
277:名無し変更議論中@詳しくは自治スレへ
09/02/15 20:21:39
>>196
テーブルのフィールド定義に設定するルックアップではできないけど、普通にクエリで作ればできますよね
ただ、実際の利用場面を考えるとあえてクエリでやらなくてもフォームのコントロールの設定でもいけるよ
278:名無し変更議論中@詳しくは自治スレへ
09/02/15 20:26:13
何時リクエリすれば良いんだろうか?
279:名無し変更議論中@詳しくは自治スレへ
09/02/15 20:29:47
自分も最初は変な掲示板のタイトルだと思っていたけど今思うと
Accessユーザーも桐ユーザーもお互いの便利な点を知らない人が多いと思うので、
こういう両方のユーザーが共通の話題について意見をだしやすくなるのはタイトル
としては調度いいと思うけどな
280:名無し変更議論中@詳しくは自治スレへ
09/02/15 20:48:25
>>279
それが本当にできていればね。
まじめに質問している人に「桐にしとっけ」って言ったところで何の意味がある?
Accessを使わざるを得ないから、ここで質問しているというのに。
これからDBソフト購入しようと思っているのだけどとか言う人に勧めるのは
理解できるが。
281:名無し変更議論中@詳しくは自治スレへ
09/02/15 21:13:06
なるほどタイトルならともかく、確かに単に桐にしとけってだけのレスじゃ意味ないな
桐がいいならそういう場合桐ならどう簡単にできるかもう少し書いてくれればいいのにね
282:名無し変更議論中@詳しくは自治スレへ
09/02/15 21:16:23
そもそも「桐」という名前自体このスレで十数年ぶりに見ました。それこそPC9801全盛の頃以来です。
このスレには旧世代の亡霊がひっそりとたたずんでいるんですね・・・w
283:名無し変更議論中@詳しくは自治スレへ
09/02/15 21:18:15
全然現役だろ
284:名無し変更議論中@詳しくは自治スレへ
09/02/15 21:27:10
此処の人って桐の社員だよね
285:名無し変更議論中@詳しくは自治スレへ
09/02/15 21:29:25
DOS桐が現役で使われてるところへ、
Accessにコンバートする仕事があったなぁ。
もう4,5年前だけど。
286:桐の社員
09/02/15 21:30:54
皆さん、もっと桐を使って下さい。
287:名無し変更議論中@詳しくは自治スレへ
09/02/15 21:55:29
桐って、このスレで初めて知った。
業務で使うことは、まず無いし。
288:名無し変更議論中@詳しくは自治スレへ
09/02/15 22:01:23
データ入力のパートとかは桐を使ってるらしいよ、入力速いんだってさ。
289:287
09/02/15 22:14:01
>業務で使うことは、まず無いし。
俺個人および勤務してる会社ではってことだから。念のため。
290:名無し変更議論中@詳しくは自治スレへ
09/02/15 22:15:26
Accessにしろ桐にしろ選択肢が多いことはいいことだ
291:名無し変更議論中@詳しくは自治スレへ
09/02/15 22:30:56
互いの長所を併せ持つソフトがあれば最高に便利なんだが…
292:名無し変更議論中@詳しくは自治スレへ
09/02/15 22:38:09
まじめに桐を勧めるにしても、回答したあとに桐との作業(労力)比較があるといいね。
293:名無し変更議論中@詳しくは自治スレへ
09/02/15 23:40:55
Access2000以降はADOを推奨みたいな説明をAccessの解説本によくのっていたけど、
デスクトップデータベースとしてしか利用していない(SQL ServerやOracleとか)自分としては
処理スピードは遅いし、テーブルやクエリの定義を操作するのにADOXとか使わないといけないし、
あまりメリットを感じないんだけど、一般的にローカルやファイルサーバーに共有mdbとしてしか
データを利用していない場合、他の人はADOとDAOのどちらを利用しているんでしょうか
本当にADOって優先的に使う意味なんてあるんですか?
294:名無し変更議論中@詳しくは自治スレへ
09/02/15 23:42:26
> (SQL ServerやOracleとか)
じゃなくて、(SQL ServerやOracleとか利用していない場合)
の誤りでした
295:名無し変更議論中@詳しくは自治スレへ
09/02/15 23:42:43
君はmdbだけなのにADOを使ってるの?
296:名無し変更議論中@詳しくは自治スレへ
09/02/15 23:51:40
>>293
2003の時はデフォルトでDAOが参照されていたし、2007の新しいエンジンはDAOベースだということを考えれば、
DAOでいいと思うよ。
297:名無し変更議論中@詳しくは自治スレへ
09/02/16 00:12:28
>>293
解説本がADOを推奨するのは、MSが発表している今後のロードマップを踏まえての事でしょう。
URLリンク(msdn.microsoft.com)
そんな訳で長期に渡って使用しそうなものは面倒でもADOを、
短期で使うものには使い勝手の良いDAOで組むというのが理想なんでしょうね。
しかし、どっちで組んでもバージョン問題が発生しやすいという・・・orz
298:219
09/02/16 00:49:44
254,255さん!
できました。ありがとうございます。これを応用すれば、
どうにかできそうな気がしてきました。助かりました。
皆さん、ありがとうございました。
299:254
09/02/16 07:21:58
>>298
げっ!できたの?
JOINとかUNIONのオンパレードで作った冗談クエリーだったのにw
まあオメ。(ド素人扱いしてスマンかったw)
300:名無し変更議論中@詳しくは自治スレへ
09/02/16 08:53:55
>>299
逆説的に無理だということを伝えるためのクエリかと思ってた・・・
301:名無し変更議論中@詳しくは自治スレへ
09/02/16 14:21:49
>>君はmdbだけなのにADOを使ってるの?
大抵の人はそうじゃないの
参照設定面倒くさいし
302:名無し変更議論中@詳しくは自治スレへ
09/02/16 14:27:58
それ昔の話だろ
303:名無し変更議論中@詳しくは自治スレへ
09/02/16 18:21:50
もう全部マクロで良いじゃん
304:名無し変更議論中@詳しくは自治スレへ
09/02/16 18:56:40
ADOとDAO利用について、結局大多数の意見はどっちよりなんでしょ?
305:名無し変更議論中@詳しくは自治スレへ
09/02/16 23:18:05
一般的にははADO
でも、Accessしか使わない
(そういう人が大半だとも思うが)
ならDAOの方が良いよ
DAOにしか出来ないこともあるし、mdbに使うのが前提な分構文が楽
306:名無し変更議論中@詳しくは自治スレへ
09/02/17 00:06:32
【 システム環境 . 】 Windows2000, Access2003
【 VBAが使えるか .】 はい
【 VBAでの回答 】 可
マクロやVBAでメッセージボックスを出すときに、
他のアプリケーションを使用していても、一番手前にメッセージを表示させることって出来ますか?
307:名無しさん@そうだ選挙にいこう
09/02/17 01:43:05
M$のスタンスの変遷
Access2000 これからはADOの時代だぜみんな!マンドクさくてもADO使えや!
↓
Access2002 既定の参照設定からDAOはずしたら、苦情殺到。。。ショボーン(´・ω・`)
↓
Access2003 既定の参照設定にDAOを復活させました。正直スマンカッタ orz
↓
Access2007 新エンジンACEはもちDAO組み込みっス。えADO?なんですかそれ←今ココ
308:名無し変更議論中@詳しくは自治スレへ
09/02/17 03:39:02
>>306
できたような記憶があったので調べてみました。
分かりやすくまとめてあるページを見つけましたよ。
URLリンク(634.ayumu-baby.com)
309:名無し変更議論中@詳しくは自治スレへ
09/02/17 07:54:20
>>308
わー、これだー!
ありがとうございます!!
310:名無し変更議論中@詳しくは自治スレへ
09/02/17 15:13:38
フォームを開くときに、他のフォームが開いていたらメッセージ出力して開けないようにしたいのですが、
一番かんたんな方法はどういった物があるでしょうか?
いまは「開くときイベント」にforms.countをチェックしてやっているのですが、
ここでチェックに引っかかり docmd.closeを実行したら、当たり前ですが「閉じる時イベント」が実行されてしまうため
(これを実行したくないです)あまり個人的にはやりたくありません・・・・
宜しくお願いします。
xp sp2 access2003 VB可です
311:名無し変更議論中@詳しくは自治スレへ
09/02/17 15:29:21
>>310
開く時イベント(Form_Open) には Cancel というパラメータがありますから
docmd.close の代わりに Cancel=True とすれば良いと思いますよ。
312:名無し変更議論中@詳しくは自治スレへ
09/02/17 16:45:55
>>311
ありがとうございます!早速試してみます。
313:名無し変更議論中@詳しくは自治スレへ
09/02/18 00:18:19
>>307ってホント?迷走しとるなあ…
314:名無し変更議論中@詳しくは自治スレへ
09/02/18 00:34:59
>>307
分かりやすいですね
315:名無し変更議論中@詳しくは自治スレへ
09/02/18 18:04:14
結局2007って2003に比べて便利になったの?
あまり良いイメージないんだけど
316:名無し変更議論中@詳しくは自治スレへ
09/02/18 18:07:26
拡張子が変わったりADO構文が別物になったりしてるのはさすがにやりすぎ。
あえて一度不便にして、課金製に移行する布石にしてんじゃねーのかとすら思う
317:名無し変更議論中@詳しくは自治スレへ
09/02/18 19:55:02
>>315
便利になったとは思えないよ。ユーザーを無視したインターフェイスの変更で
使い難くて仕方が無い。今に始まった訳じゃ無いけどさ。
318:名無し変更議論中@詳しくは自治スレへ
09/02/18 21:18:50
俺はむしろ2007の方が使いやすい感じがする。
リボンもシンプルになっていてわかりやすいし、致命的に悪くなってるところは無いように思う。
sharepointサービスとの連携みたいなのは使わないからいらないけど・・・。
タブとか分割フォームなんかは悪い機能じゃないと思う。
>>316
2007でADOって使うの?DAOに回帰したのかと思ったんだけど。
319:名無し変更議論中@詳しくは自治スレへ
09/02/18 21:55:58
> ADO構文が別物になったりしてるのはさすがにやりすぎ
え、ADOって構文変わってるの!
どこがどのくらい変わったの?マイクロソフトのページとか説明ありますか?
320:名無しさん@そうだ選挙にいこう
09/02/18 23:53:10
>>318
たぶんM$のアオリを真に受けて、ADOで構築しちまったレガシーシステムの
移行とかがあるんじゃないの。いや >316 がそうかどうか知らんけど、一般的に。
M$が手のひら返して泣くのはいつも現場。
321:名無し変更議論中@詳しくは自治スレへ
09/02/19 09:50:31
使うのがMDBとACCDBだけなら、DAOもADOも要らないんじゃないの?
全部Accessのアプリケーションレベルで処理、マクロとコマンドだけ
2007だとマクロで変数使えるしエラー処理できるし
俺、何か間違ってる?
322:名無し変更議論中@詳しくは自治スレへ
09/02/19 11:32:51
>>318
> 俺はむしろ2007の方が使いやすい感じがする。
カスタムメニューとかカスタム ショートカットとかは、どうしてるの?
xmlで書いてるの?
323:318
09/02/19 15:22:05
>>322
ごめん。そこまで使い込んでない。
単純に新しいインターフェースとかデザイナの機能なんかが使いやすいかなと思っただけだ。
>>321
aceってDAOベースだから、DAOと同じコードは動くみたいだね。
ADOが変わったというのは確認出来てないけど。
324:名無し変更議論中@詳しくは自治スレへ
09/02/19 16:23:54
フォームのテキストボックス内でカーソル移動させる方法ってありますでしょうか?
目的としては、
テキストボックス:郵便番号に入力するとテキストボックス:住所に「○○県○○市○○町」と自動表示された後、
カーソルが自動表示された住所の終端に来るようにしたいのです。
現在はカーソルが住所に移動したときに、自動表示された住所が選択された状態になってしまいます。
325:名無し変更議論中@詳しくは自治スレへ
09/02/19 16:33:55
TextBox.SelStart
TextBox.SelLength
326:316
09/02/19 18:20:53
誤解を招いてしまったようで申し訳ない。「変わった」というのはここ、コネクション部分のことを言いました。
"構文"と言ったら普通は他の部分と思いますよね。すいませんでした
RST.Open Source:=SQL, ActiveConnection:="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MDB", CursorType:=adOpenStatic
RST.Open Source:=SQL, ActiveConnection:="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=MDB", CursorType:=adOpenStatic"
でもこれって結構おおごとじゃないですかね
327:名無し変更議論中@詳しくは自治スレへ
09/02/19 20:45:11
>>326 それを聞いてちょっと安心した
でも、AccessにしろExcelにしろ自分でメニューバーにオリジナルのメニューを追加して利用しているんだけど
これってメニューバーのなくなってリボンになった2007ではそのままでは、マクロで自動的にメニュー作成とかできなく
なっているんでしょうかねぇ やっぱり動作できなくてエラーになりますか?
今までメニューバーにオリジナルメニューをマクロで利用していたユーザーってどうしているんでしょうか
過去の自分の資産が有効活用できないのは困ると思うのですが
328:名無し変更議論中@詳しくは自治スレへ
09/02/19 22:59:22
無料になったランタイムをパッケージ化してユーザーに配って使わせてる人いる?
複数クライアントがスタンドアローンとして入力した後の
テーブル結合の依頼がACCESS本体入ってる自分の所に来て大変…。
SQLサーバー買って同時入力させる為にコード書き直すのも大変な労力なんだよなぁ
329:名無し変更議論中@詳しくは自治スレへ
09/02/19 23:03:56
>>326
まあ、固定の文字列が変わっただけなら置換で全部変更出来るからあまり問題なさそうだけどな。
>>327
メニューバー自体がもうWindows7以降どうなるかわからないし、いまのうちにリボンに移行しておけ
っていうことなんじゃないかな。
330:名無し変更議論中@詳しくは自治スレへ
09/02/19 23:24:37
リボン嫌い! メニュー大好き!
331:名無し変更議論中@詳しくは自治スレへ
09/02/19 23:27:31
リボンはMSが特許とってるからいろいろと普及しないでしょ。
332:名無し変更議論中@詳しくは自治スレへ
09/02/20 00:03:59
未確認だけど、2007のVBEはメニュー形式じゃないよね?
もしそうなら、表の操作メニューとの整合性を考えていないって事になるよな
333:名無しさん@そうだ選挙にいこう
09/02/20 00:14:59
>>332
「VBEはリボンじゃなくてメニューバーのままだよね」って意味かな?
もしそうなら、その通り。ほとんど(まったく)変わってない。
だから、2007での作業はVBAでコーディングしているときが一番ストレスないというw