Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


472 / 500 ページ ←次へ | 前へ→

【3712】Re:数万件のコンボボックスにおいて・・・
発言  こもれび  - 04/10/14(木) 21:46 -

引用なし
パスワード
   こもれびです

65535を超えて最大何件(何レコード)位なのでしょうか。
「区切り」を付けて切り替える方法を考えてみましょう。
(どれくらい考えられるか保障はできませんが…)

このスレッドを見ていらっしゃる皆さんからも、もっと
よい方法など助言がいただけるかもしれません。

それにしてもどえらい仕様ですね (^_^;;
パワーをかけた割には目立つ動きの無いところもまた…(--;

(Access95時代に「コマンドボタンを丸くしてくれ!」という
要求があって狼狽したことを思い出してしまった(T_T) )
・ツリー全体表示

【3711】Re:フォームの背景について
お礼  miya  - 04/10/14(木) 20:07 -

引用なし
パスワード
   ▼こもれび さん:
返信が遅れまして大変申し訳ありませんでした。
いろいろとご親切に教えて頂き本当にありがとうございます。
色コード表を参考にしながら自分なりの
フォーム背景に色をつける事も出来ました。
即の回答で本当に助かりました。
本当にありがとうございました。
・ツリー全体表示

【3710】Re:フォームの背景について
回答  こもれび  - 04/10/14(木) 16:18 -

引用なし
パスワード
   こもれび です

色コードについては、「HTMLタグ辞典」などの参考書に付録してくる
色のコード表を見られるのが手っ取り早いかもしれません。
ネット上でも「色 コード」で検索するとコードサンプルを掲載している
サイトが幾つか出てきます。

ちょっと検索しましたところ…
http://www.synapse.ne.jp/~yama/saru/hpma/color.html

例)
#00FFFF,#FFFF00,#0000FF,#66CC99,#9900CC
などとRGB各々16進数2桁×3で記載されておりますが、実際にプロパティシートや
VBAコードで使用するときはこのままでは使えません。
使用するときはまず16進コードの並びを「BGR」の並びにしないとだめです
上の例ではそれぞれ
FFFF00,00FFFF,FF0000,99CC66,CC0099
となります。
さらに、VBAのコードでプロパティを設定するときはこの16進数を10進数に
変換するか、16進数のまま記述するときは長整数型(Long)であることを
明示しないととんでもない色になってしまいます。

具体的には

  詳細.BackColor = Val("&hcc0099#") ' 16進表示(Long)
若しくは
  詳細.BackColor = 13369497     ' 10進表示

※ 長整数を明示する場合は数字に「#」をつける (ちょっと表現が悪いのですが…)
・ツリー全体表示

【3709】ACCESS97から2003へ移行する場合
質問  eimy  - 04/10/14(木) 15:07 -

引用なし
パスワード
   いつもこの掲示板にお世話になっています。
ご存知の方がいらっしゃいましたら、よろしくお願いします。

現在Windows95・98・XPのOSとOffice97の環境にあるACCESSを、
WindowsXP・Office2003の環境にバージョンアップすることになりました。
バージョンアップにあたり、色々と影響調査をしたのですが、
情報の多さに重要なものを見極められません。。。
そこで、移行したらどんなことがエラーになった、
何がダメだったなどの情報をお持ちの方がいらっしゃいましたら、
教えていただけないでしょうか?

もうひとつ気になることがありまして、
「全角文字のプロシージャ名などを使用していると、エラーにならなくても
正しい結果が得られない可能性がある」と言う情報を見つけたのですが、
これって本当なんでしょうか?
いたる所に漢字を使っているので、この情報が本当だとかなり大幅な修正が
必要になってしまいます。。。

長々と書いてしまいましたが、同じような経験をされた方や、
情報をお持ちの方がいらっしゃいましたら、ご返答ください。
よろしくお願いします。
・ツリー全体表示

【3708】Re:購入実績を検索するACCESSを作りたい
お礼  えなりん  - 04/10/14(木) 13:09 -

引用なし
パスワード
   たくさんのお返事をありがとうございました。

また何かありましたら質問させてください。
・ツリー全体表示

【3707】Re:データベースオブジェクトの削除方法
お礼  山田  - 04/10/14(木) 12:39 -

引用なし
パスワード
   できました。
有難うございました。
・ツリー全体表示

【3706】Re:フォームの背景について
質問  miya  - 04/10/14(木) 11:38 -

引用なし
パスワード
   ▼こもれび さん:
見ていて下さって大変ありがとうございます。
早速の回答もありがとうございます。
たびたび申し訳ありません。
下記の記述で色の変更はなりました。
色のコード?番号はどのようにして調べればよいのでしょうか?
本当に何度もすみません。

>こもれびです
>
>次のようになります。
>
>Private Sub Form_Open(Cancel As Integer)
>
>  詳細.BackColor = 255 ' 詳細の背景色=赤
>  フォームヘッダー.BackColor = 0 ' フォームヘッダーの背景色=黒
>  フォームフッター.BackColor = 65535 ' フォームフッターの背景色=黄色
>
>End Sub
>
>コード中の「詳細」・「フォームヘッダー」および「フォームフッター」は
>名前をプロパティシートで変更していましたら、その変更した名前を記述してください
・ツリー全体表示

【3705】Re:購入実績を検索するACCESSを作りたい
回答  クロ  - 04/10/14(木) 10:26 -

引用なし
パスワード
   >この違いは何なのでしょうか。

検索用フォームレコード移動時(Currentイベント)がフィルタ処理後に実行される
実行されると詳細用フォームにフォーカスが移るのでフィルタ後に
DoCmd.GoToControl "一覧品名"
を記述すると問題が出たのでは?
※フィルタ処理後に実行されると場合によってはレコートが移動するのでCurrent
 イベントが動いたと憶測....
・ツリー全体表示

【3704】Re:フォームの背景について
回答  こもれび  - 04/10/14(木) 9:58 -

引用なし
パスワード
   こもれびです

次のようになります。

Private Sub Form_Open(Cancel As Integer)

  詳細.BackColor = 255 ' 詳細の背景色=赤
  フォームヘッダー.BackColor = 0 ' フォームヘッダーの背景色=黒
  フォームフッター.BackColor = 65535 ' フォームフッターの背景色=黄色

End Sub

コード中の「詳細」・「フォームヘッダー」および「フォームフッター」は
名前をプロパティシートで変更していましたら、その変更した名前を記述してください
・ツリー全体表示

【3703】Re:フォームの背景について
質問  miya  - 04/10/14(木) 9:13 -

引用なし
パスワード
   ▼miya さん:
▼こもれび さん:
こもれび ありがとうございます。
返信が送れてしまい申し訳ありません。
ご覧になっていないかと思いますが見ていらしたら
回答を頂きたいと思います。
フォームが起動するとき(開く時)に希望の背景色で開きたいのであれば

>>・フォームのデザインにて
>>「フォーム」のプロパティシートで「イベント」タブの「開く時」に
>>イベントプロシージャを記述します。
>>
>>Private Sub Form_Open(Cancel As Integer)
>>
' ここに記述  ← どのように記述してよいのか、わかりません。
          お手数ですがお教え頂けたらと思います。
>>End Sub
・ツリー全体表示

【3702】Re:フォームの背景について
質問  miya  - 04/10/14(木) 9:11 -

引用なし
パスワード
   ▼こもれび さん:
こもれび ありがとうございます。
返信が送れてしまい申し訳ありません。
ご覧になっていないかと思いますが見ていらしたら
回答を頂きたいと思います。
>フォームが起動するとき(開く時)に希望の背景色で開きたいのであれば
>
>・フォームのデザインにて
>「フォーム」のプロパティシートで「イベント」タブの「開く時」に
>イベントプロシージャを記述します。
>
>Private Sub Form_Open(Cancel As Integer)
>
> ' ここに記述  ← どのように記述してよいのか、わかりません。
>           お手数ですがお教え頂けたらと思います。
>End Sub
>
>>「詳細」・「フォームヘッダー」および「フォームフッター」の
>>名前まで変更可能なのですか?
>
>デザインモードで参照できるプロパティシートのドロップダウンボックス
>で選択できるコントロールに「詳細」・「フォームヘッダー」および
>「フォームフッター」があります。
>それらを選択して「その他」タブを見てみましょう。
>「名前」がありますのでここを変更します。
         ↑
出来ました。ありがとうございます。
・ツリー全体表示

【3701】Re:購入実績を検索するACCESSを作りたい
お礼  えなりん  - 04/10/14(木) 9:10 -

引用なし
パスワード
   お返事早いのでビックリしました。
本当に∞ありがとうございます。

検索フォームで、品名や仕様で検索するために「検索」ボタンを作り
DoCmd.ApplyFilter , stLinkCriteria
DoCmd.GoToControl "一覧品名"
という記述をしていました。
一覧の品名に条件付書式(フォーカスのあるフィールド)をつけていたので、どうしてもDoCmd.GoToControl "一覧品名" が必要だと思ったんです。
DoCmd.GoToControl "一覧品名" がないと、「検索」ボタンを押した時の、最初のレコードに条件付書式がつかなかったんです。
それを
DoCmd.GoToControl "一覧品名"
DoCmd.ApplyFilter , stLinkCriteria
と書き換えたら、条件書式もつき、詳細フォームで空データも表示できるようになりました。

この違いは何なのでしょうか。
おかげさまで問題は解決したようですが、なんだか「え?」ってカンジです。
・ツリー全体表示

【3700】Re:数万件のコンボボックスにおいて・・・
発言  んのん  - 04/10/14(木) 9:04 -

引用なし
パスワード
   ▼こもれび さん:
ご回答いただきまして
ありがとうございます

>何ゆえにコンボボックスを使われるのでしょうか?
>通常コンボボックスというコントロールはある程度
>限られた範囲のデータから1つのデータを選択する
>といったときに使用します。
>
>データの集合が数十件を超えるものでコンボボックス
>が使われていたりするとユーザーは嫌がるものなのですけど…
>んのんさんのアプリケーションの場合、まず使い方に誤りが
>あるとおもいます。

勿論そうですね、実際私自身もコンボボックスをこのような使い方をしたことが
ありません

一応仕様なので・・・こういう風にしてくれと・・・
最悪どうしようもなければ
全く違う方法をとるしかありませんが・・・

>何ををやりたいのか? が今ひとつ見えないのですが、
>「左にあって右にない」レコードを探してデータを追加したい
>ということなのでしょうか?
>
>もしそれだとしたらSQLのFROM句にてLEFT JOINでレコードを
>抽出し、その後追加クエリを実行すれば済むような気がするの
>ですがいかがでしょうか?

追加は行いません
結局これらのコンボの役目は
間違いであろうとも
IDを検索するためのものです
ただ、IDを選択された際にも名前にはそのIDの名前が出るようにし、
逆に名前を選択された際にはその名前のIDが出るようにしたいのです

この状態が良いということですので…

左右の状態は全く同じで、ただ単純に表示列順序とレコードソートが違うだけです

もちろん65536件を越える時にどうするかという問題もあって…
仕様なのです…

お願いします
・ツリー全体表示

【3699】Re:購入実績を検索するACCESSを作りたい
回答  クロ  - 04/10/14(木) 8:42 -

引用なし
パスワード
   検索用フォームの「オートNo」のクリック時のイベントではどうですか?

※当方ではフォームのレコード移動時でも特に問題なく詳細用フォームは
 開き、検索用フォームのレコード移動時でも詳細用フォームの内容は可
 変します。Win2000SP4+Access2002SP3
・ツリー全体表示

【3698】Re:購入実績を検索するACCESSを作りたい
質問  えなりん  - 04/10/14(木) 8:30 -

引用なし
パスワード
   クロさん度々のアドバイスありがとうございます。

「追加の許可」を確認しましたが、ちゃんと「はい」になっています。

試しに、検索フォームに新たにボタンを作り(「新規登録」)openform〜acaddをするようにしたところ、問題なく空データの詳細フォームが開きました。
Currentイベントがいけないのでしょうか。
・ツリー全体表示

【3697】Re:数万件のコンボボックスにおいて・・・
発言  こもれび  - 04/10/13(水) 23:31 -

引用なし
パスワード
   こもれびです

身も蓋もない回答になってしまうのですが…
何ゆえにコンボボックスを使われるのでしょうか?
通常コンボボックスというコントロールはある程度
限られた範囲のデータから1つのデータを選択する
といったときに使用します。

データの集合が数十件を超えるものでコンボボックス
が使われていたりするとユーザーは嫌がるものなのですけど…
んのんさんのアプリケーションの場合、まず使い方に誤りが
あるとおもいます。

何ををやりたいのか? が今ひとつ見えないのですが、
「左にあって右にない」レコードを探してデータを追加したい
ということなのでしょうか?

もしそれだとしたらSQLのFROM句にてLEFT JOINでレコードを
抽出し、その後追加クエリを実行すれば済むような気がするの
ですがいかがでしょうか?
・ツリー全体表示

【3696】数万件のコンボボックスにおいて・・・
質問  んのん  - 04/10/13(水) 19:23 -

引用なし
パスワード
   はじめまして

現在あるフォーム上に2つのコンボボックスがあります
(左右に配置してあるとすると)
左のコンボからは1列目の値を利用し右のコンボの2列目の値と連動させリストを表示する

それぞれ、同一テーブルから生成しています

コンボID           コンボ名前
ID     名前        名前     ID
---------- ------------    ------------ ----------
111    安威宇 江夫     安威宇 江夫  111
222    柿区 毛子      柿区 毛子   222
333    左師 すね夫     左師 すね夫  333

上記のようなリストになっており、
それぞれの左列に入力、または選択を行い対応するものを反対のコンボに表示する
といった処理です

要するに左はID順、右は名前順のソートがなされており
それぞれが同じ物を選択している結果に表示したいのですが

このテーブルのレコード数が65536件を越えた場合なんですが

オートコレクト、自動拡張のような機能は持たしたいと思っています

当然1文字入れるたびに凄く時間がかかります
また処理として各コンボのクリックイベントで相方のコンボを対応するものに表示させる処理を行っています

リスト内の件数を減らすことも考えているのですが、どうも上手く減らすように思いつきません

どなたか、よいアドバイスをいただけないでしょうか?
説明がへたくそなので申し訳ありませんが、どうか宜しくお願いいたします
・ツリー全体表示

【3695】Re:購入実績を検索するACCESSを作りたい
回答  クロ  - 04/10/13(水) 17:24 -

引用なし
パスワード
   詳細用フォームのプロパティで「追加の許可」が「いいえ」に
なっていませんか?
・ツリー全体表示

【3694】Re:購入実績を検索するACCESSを作りたい
質問  えなりん  - 04/10/13(水) 17:18 -

引用なし
パスワード
   さっそくのご回答ありがとうございます。
ご指摘の通り、半角カナを全角カナに直しました。

それと、DoCmd.GoToRecord , , acNewRecの件ですが、
DoCmd.GoToRecord , , acNewRecを追加してみました。
結果としては、変わらずです。
[検索]ボタンをクリックする前に表示していた詳細データが表示されたままになってしまいます。
・ツリー全体表示

【3693】Re:購入実績を検索するACCESSを作りたい
回答  クロ  - 04/10/13(水) 16:56 -

引用なし
パスワード
   変数にするほどでないので直接書きました。

If IsNull(Me.一覧オートNO) Then
 MsgBox "実績ありません", vbQuestion + vbOKOnly
 DoCmd.OpenForm "詳細用フォーム", , , , acFormAdd
 DoCmd.GoToRecord , , acNewRec
Else
 DoCmd.OpenForm "詳細用フォーム", , , "[オートNO]=" & Me.一覧オートNO
End If

※半角カナは全角カナに変更してあります。

注意点
名称に半角カナを使うのはやめましょう。後々面倒なことになります。
早めに改名した方がいいと思います。
参照URL
http://ww3.tiki.ne.jp/~kaya/Ac_tips.html#Tips0_001
・ツリー全体表示

472 / 500 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:
1084768
(SS)C-BOARD v3.8 is Free