ソフトはACCESS2000です。
フォームでの入力で、リストボックスから複数選択できるようにしているのですが、このリストボックスの値集合ソースに入っている件数が多いため、下にかなりスクロールすることになります。
そこで、リストボックスの右側に別にリストボックスで選択したものを表示させられないかと思っています。
ここでお聞きしたいのは、
1. 表示エリアとしてテキストボックスを作ったのですが、テキストボックスでOKか?
2. 1でOKの場合、リストボックスで選択したものをテキストボックスに表示させる方法
3. 1でOKの場合、そのテキストボックスへ入力できなくする方法(表示ONLYにしたい)
4. 1でだめな場合、別な方法はあるか?あればその方法
です。
回答は、1~3か、1,4になるかと思います。よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

リストボックスのプロパティの更新後処理から[イベントプロシージャ]を


選んで、右に出る ・・・ をクリックしてください。コードはそこに記述します。

ここで「リスト0」はリストボックスの名前、「テキスト2」はテキストボッ
クスの名前です。

Private Sub リスト0_AfterUpdate()

Dim cnt As Integer
Dim dummystr As String

cnt = 0
dummystr = ""

While cnt < リスト0.ItemsSelected.Count
dummystr = dummystr & リスト0.ItemData(リスト0.ItemsSelected.Item(cnt))
dummystr = dummystr & "/"

cnt = cnt + 1
Wend

テキスト2.Value = dummystr

End Sub

この回答への補足

バッチシできました!
ありがとうございました。ただ、欲を言いますと
>dummystr = dummystr & "/"
この辺をどうにかして、縦に並べられる(改行できる)とありがたいのですが。
何とかなりますでしょうか?

補足日時:2002/02/15 15:26
    • good
    • 0

VBA ではどうもテキストボックス内で改行出来ないようなので、


改行して表示したい場合はテキストボックスでなく、こちらも
リストボックスにしたらどうでしょうか?
リスト0が選択するリストボックス、リスト2が表示用のリストボックスです。
(前もってリスト2の値集合タイプを値リストにして下さい。)

Private Sub リスト0_AfterUpdate()

Dim cnt As Integer

If リスト0.ItemsSelected.Count > 0 Then
リスト2.RowSource = リスト0.ItemData(リスト0.ItemsSelected.Item(0)) & ";"
cnt = 1
While cnt < リスト0.ItemsSelected.Count
リスト2.RowSource = リスト2.RowSource & リスト0.ItemData(リスト0.ItemsSelected.Item(cnt)) & ";"
cnt = cnt + 1
Wend
Else
リスト2.RowSource = ""
End If

End Sub
    • good
    • 0
この回答へのお礼

ちょっと今の私には難しすぎます。今回は改行しないで表示することにしました。
わざわざありがとうございました。

お礼日時:2002/02/19 19:39

1.の補足です。


いつのタイミングで、テキストボックスに移すかによりますが、リストの中の項目をダブルクリックで表示させる場合は、リストボックスのDbclick時に先ほどの式を追加してみてください。
    • good
    • 0
この回答へのお礼

リストボックス側のプロパティですね。←こんな初歩的なことも分からずにいました。^^;
ありがとうございました。

お礼日時:2002/02/15 15:23

1. 表示エリアとしてテキストボックスを作ったのですが、テキストボックスでOKか?


OKです。

2. 1でOKの場合、リストボックスで選択したものをテキストボックスに表示させる方法
表示するテキストボックスをFieldname1、リストボックスをFieldListとすると、
Me!FieldName1 = Me!FieldList
でできるはずです。

3. 1でOKの場合、そのテキストボックスへ入力できなくする方法(表示ONLYにしたい)
テキストボックスを使用不可、ロックすればいいと思いますが...。

簡単ですが、参考にしてください。

この回答への補足

回答ありがとうございます。
1つだけ質問追加させてください。
2の「Me!FieldName1 = Me!FieldList」はどこに設定すれば良いですか。(式?の意味は判ります。)

補足日時:2002/02/15 13:09
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q事故(器質性)による勃起障害(ED)を治療してくてる病院はありますか?

 親類が交通事故にあい、勃起に関連する神経を損傷してしまい勃起不全(ED)になってしまいました。
 脊髄に損傷はなく、歩いたり排尿したりするのには問題はないのですが
、脊髄から性器につながる神経の一部を損傷してしまい勃起不全になってしまったようです。
 現在入院している病院では事故による勃起不全に関しては、回復はもちろん、どう損傷しているかも正確な診断はできないそうです。
 また違う病院を紹介してもらうのも難しいと言われてしまいました。
 
 ネットでも調べてみたのですが心因性のED治療をしている病院は多いのですが、器質性のEDの治療をしている病院は見つかりませんでした。

 もし事故(器質性)による勃起不全(ED)の治療を手がけている病院がありましたら全国どこでもかまいませんので教えていただけたらありがたいです。
 回復はともかく、せめて正確な診断だけでもさせてあげたいです。
 また何かアドバイスだけでもしていただけたらありがたいです。
 どうかよろしくお願いいたします。

Aベストアンサー

前回紹介させて頂いたのは、岡山大学病院ですが、
関西圏で申し訳ないですが、あと大阪中央大学病院、
神戸大学病院です。関東圏では、慶応義塾大学病院。
いずれも、男性性機能障害はもちろんのこと、
泌尿器系全般に於いて、お勧めできます。

Qテキストボックスやリストボックスの書式設定

フォームのテキストボックスやリストボックスの書式
設定をVBAでしようと思っているのですが、
複数のオブジェクトの設定を一括して同じ設定にする
方法はありませんか?

今はひとつひとつ↓のように設定してます。

With Me.性別
.TabStop = False 'タブストップ
.BorderStyle = 0 '境界線スタイル
.SpecialEffect = 0 '立体表示
.Locked = True '編集ロック
End With

Aベストアンサー

Dim Ctl As Control

For Each Ctl In Me.Controls
If Ctl.Section = acDetail Then
On Error Resume Next 'エラーを無視

Ctl.TabStop = False 'タブストップ
Ctl.BorderStyle = 0 '境界線スタイル
Ctl.SpecialEffect = 0 '立体表示
Ctl.Locked = True '編集ロック

Err = 0
End If
Next Ctl

この場合は、「詳細部」セクションにある全ての
コントロールの設定を変更します。

Q病院で行うEDの治療とは?

よく病院で、「EDの方はお申し出ください」という主旨の掲示を見ますが、どのような治療なのでしょうか。
また、治療代なども分かれば嬉しく思います。
ご存知の方、よろしくお願いいたします。

Aベストアンサー

対症(対処は誤用)療法は、バイアグラなどの処方なので、その前に問診、血液検査、一部では心電図ですかね。初診料込で3000円くらい? 加えて、お薬代で1500円/錠ってとこです。

原因療法は、肥満や高血圧、糖尿など、EDの原因とされる症状から脱出する方法を医師と相談しながら、健康を取り戻すお薬を処方して頂くとかでしょ。神経性の原因なら神経内科や神経科で医師のカウンセリングを受けながら、抗うつ剤などを処方して頂くわけだが、この手の薬はEDの原因とも言われてる。まずもって、心身ともに健康を取り戻すことが肝要やね。

QACCESS コンボボックス 抽出 テキストボックスに表示

初めての質問を投稿させていただきます。l
ACCESSのVBAにて分からないことがあるので、
質問を投稿させていただきました。

以下のようなテーブルがあります。
名称:番号:管理番号:価格
cake|NO.1|C1|200
cake|NO.2|C2|200
chocolate|NO.1|C3|300
chocolate|NO.2|C4|300
chocolate|NO.3|C5|300
cookie|(空白)|C6|100
フォーム上に、コンボボックスが二つ設置されており
最初のコンボボックスでは、cake、chocolate、cookieを選択することができます。
また、二つ目のコンボボックスでは最初のコンボボックスで選択した名称に対する番号を選ぶことが出来ます。
------------------以下が疑問点です-------------------------
このフォームにはそれ以外にテキストボックスが設定されています。
名称と番号を設定した後に管理番号(重複なし)をテキストボックスに表示。
その後、管理番号を元に価格もテキストボックスに表示したいと考えておりますが、どのようなプログラムを組めばよろしいでしょうか?

初めての質問を投稿させていただきます。l
ACCESSのVBAにて分からないことがあるので、
質問を投稿させていただきました。

以下のようなテーブルがあります。
名称:番号:管理番号:価格
cake|NO.1|C1|200
cake|NO.2|C2|200
chocolate|NO.1|C3|300
chocolate|NO.2|C4|300
chocolate|NO.3|C5|300
cookie|(空白)|C6|100
フォーム上に、コンボボックスが二つ設置されており
最初のコンボボックスでは、cake、chocolate、cookieを選択することができます。
また、二つ目のコンボボックスでは最初のコン...続きを読む

Aベストアンサー

> なぜ、連結列列を2としたか、考えてみてください。

大事なところは2度言いましたよ。。。 は冗談ですが


> (ご質問から想定される私の中での考える動きは確認したつもりでおりますが、意図と違っていましたらごめんなさい)

何か日本語になっていないですね


(ご質問から、・・・私の中で想定した動きは確認したつもりでおりますが、意図と違っていましたらごめんなさい)

まだ日本語化になってないですかね。

Q京都 大阪でED治療(カウンセリング)が出来る病院

私は23歳で心因性のEDと診断されました。
そこでED治療薬バイアグラの処方してもらい自信をつけてと先生に言われ試しまた。
確かにバイアグラ服用時は満足いく性行為は可能だったのですが、やはりバイアグラを服用しないと不安になり満足いく性行為が出来ませんでした。

2件いった病院は診察→即処方という流れだったのですが、
やはり心因性なのでしっかり不安等を聞き出したり、アドバイスしてくれるような病院いいと思いました。カウンセリングというんですかね?
そういう病院を京都、大阪でご存知ないでしょうか?
京都北部に住んでいるため出来れば土日も診療可能で経済的にも厳しいので良心的な価格のところが出来れば希望です。でも治る見込みがあるのであれば贅沢はいいません・・・

すごく悩んでいます。情報提供よろしくお願いします。

Aベストアンサー

アナタのEDの原因が”精神的なもの”と診断されたのですね
そしてバイアグラなどの薬に頼らずEDを治したいと...

それなら「心療内科」を受診されることをオススメします、その近くにいくらもあると思いますよ

でもまぁこれは鬱病の治療と同じようなもので、まず投薬によって緩解までもっていって自信を持たせ、そのあと自己治癒に期待をもたせるスタイルが一般的で、問診やカウンセリングからだけで投薬しないケースはあまりありません。

要するにアナタの場合も、まずはバイアグラで性行為が可能であるなら、これでまず満足することが肝心ですね、これが効かない心因性の人も多くいるわけだから。

そのうえで、お近くの心療内科をお訪ね下さい。

Q(ACCESS)条件に応じて、テキストボックスを表示・非表示設定

(ACCESS)条件に応じて、テキストボックスを表示・非表示設定

フォーム上のテキストボックスAを条件に応じて表示・非表示にさせたいです。


条件は、サブフォームのテキストボックスBに「支払」を言う文字があれば、
テキストボックスAが表示され、なければ非表示にする方法が探しています。

わからないなりに調べて、多分以下の文章になると思いますが、「?」の条件式がうまくいきません

Private Sub AA_GotFocus()
If  ????? Then
Me!テキストボックスA.Visible = False
Else
Me!テキストボックスA.Visible = True
End If
End Sub


どなたか教えてください。
宜しくお願い致します。

Aベストアンサー

訂正。(2)のところで、

Private Sub t1_GotFocus()
If Forms!フォーム名!ctlサブフォーム名!テキストボックスB Like "*" & "支払" & "*" Then

になっていましたが、


Private Sub t1_GotFocus()

を、

Private Sub AA_GotFocus()

としてください。書き間違いです。

QED治療の病院

現在EDに悩んでいます。
恐らく心因性のEDではないかと考えているのですが、器質性のEDである可能性も視野に入れて、一度泌尿器科の病院で診てもらおうと考えています。
ただ、このような病院にはかかったことがないので少し不安です。
そこで、過去に泌尿器科での診療経験のある方、そうでない方でも評判の良い泌尿器科をご存知でしたら教えていただけないでしょうか?
東京23区内でよろしくお願い致します。

Aベストアンサー

>恐らく心因性のEDではないかと考えているのですが
>器質性のED>である可能性も視野に入れて
>一度泌尿器科の病院で診てもらおうと考えています。
>このような病院にはかかったことがないので少し不安です。
ED外来のある医療機関に、受診されたら如何でしょう。
ED外来のある医療機関検索URL
http://www.ed-info.net/search/

自分の経験からすると、EDは糖尿病による二次的症状でなければ
ED治療薬の処方で済ませられるのでは?
特に、心因性ならば尚更だと思います。
うつ病の治療薬の副作用か症状(性欲低下による)そのものか判別できませんが
ED症状がでた時は薬の処方でお終いて感じでしたからね。
それも主治医である精神科医の処方でした。

Qaccessでのリストボックス選択のイベント

お世話になります。

度々で恐縮なのですが、以下の質問を
よろしくお願いいたします。

accessのフォーム上にリストボックスとテキスト
ボックスをはりつけ、リストボックスに表示されて
いる行が選択されたら、その項目値をテキスト
ボックスに表示させようとしています。

しかし、リストボックスのイベント(マウスボタン
クリック時や開放時)を使ってみたのですが、
二度クリックしないとテキストボックスに表示され
ません。

リストボックスの行が選択されたというイベントが
あればいいのですが、見当たりません。

どうすれば、リストボックスで行が選択されたという
イベントを捕まえることができるのかご教示お願い
いたします。

Aベストアンサー

更新後処理で拾えませんか?

QEDのためAIH(人工授精)希望、名古屋の不妊治療の病院について

妊娠を希望している30代です。
今までタイミングを取っていましたが夫にEDの症状があり、妊娠に至りません。
排卵日前後になるとプレッシャーのためか勃起せずに行為ができません。
病院でバイアグラなどの薬をいただきましたが、それでも無理でした。
最近では自慰行為もうまく出来ない時もあるようです。
このままでは妊娠できませんので、不妊治療を始めてAIH(人工授精)をお願いする予定です。

夫の場合は当日に精液を採取できるか分からないので(勃起しない可能性が高い)、
自慰行為がうまく出来たときに精子を採取して凍結しておきたいのですが、
この場合、AIHのみとは別に費用はかかるのでしょうか?
かかるとすれば、いくらぐらいでしょうか?

また、不妊治療には名古屋の「さわだウィメンズクリニック」という病院を検討しているのですが、
こちらの病院のAIHの費用、精子の凍結設備の有無などご存知の方がいれば教えてください。

どうぞよろしくお願い致します。
(夫婦間で話し合ってAIHを行おうという結論に達しているので、行為が出来るように時間をかける等のアドバイスは結構です)

妊娠を希望している30代です。
今までタイミングを取っていましたが夫にEDの症状があり、妊娠に至りません。
排卵日前後になるとプレッシャーのためか勃起せずに行為ができません。
病院でバイアグラなどの薬をいただきましたが、それでも無理でした。
最近では自慰行為もうまく出来ない時もあるようです。
このままでは妊娠できませんので、不妊治療を始めてAIH(人工授精)をお願いする予定です。

夫の場合は当日に精液を採取できるか分からないので(勃起しない可能性が高い)、
自慰行為がうまく出来...続きを読む

Aベストアンサー

こんにちは。

>自慰行為がうまく出来たときに精子を採取して凍結しておきたいのですが、
この場合、AIHのみとは別に費用はかかるのでしょうか?
かかるとすれば、いくらぐらいでしょうか?

「さわだウィメンズクリニック」のHPを見て来ましたが費用が載っていませんね。
ですが、IVF・ICSIについては「凍結胚移植」をしていることが書かれていましたので、フリーザーはあるのでしょう。
費用については他施設の平均的な金額を言うと、だいたい一回分の凍結で20,000円から30,000円でしょうか。それで1年間とか2年間とか予め決められた期間だけ凍結保存してもらえます。
AIHの場合、一回の採精で一度分しか凍結できないと思います(=一度の採精分を何度ものAIH分に分けて凍結することができない)ので、一回使い切りですからかなり高い感じですね。
もちろん、それにAIHの費用...1万円から2万円程がかかります。
しかも。融解した精子はフレッシュに比べてかなり運動率が落ちます。例えば自然妊娠可能な通常レベルの精子なら、凍結-融解後はAIHレベルに落ちます。AIHで妊娠可能なレベルの精子ならIVFレベルに、IVFレベルの精子ならICSIに、という具合です。
バイアグラを処方されているとのことで、精液検査はお済みでしょうか?まだの場合、凍結精子を使用してAIH希望しても無理なことがありますので、専門医によくご相談ください。

こんにちは。

>自慰行為がうまく出来たときに精子を採取して凍結しておきたいのですが、
この場合、AIHのみとは別に費用はかかるのでしょうか?
かかるとすれば、いくらぐらいでしょうか?

「さわだウィメンズクリニック」のHPを見て来ましたが費用が載っていませんね。
ですが、IVF・ICSIについては「凍結胚移植」をしていることが書かれていましたので、フリーザーはあるのでしょう。
費用については他施設の平均的な金額を言うと、だいたい一回分の凍結で20,000円から30,000円でしょうか。それで1年...続きを読む

Qアクセスのリストボックスの複数選択

リストボックスの設定方法を教えてください。

1画面目にテーブルと連結したリストボックスがあります。
複数選択した情報をSelectedプロパティで取得しています。

次画面にて同じテーブルに連結されているリストボックスを
1画面目と同じ様に選択されている状態にしたいのですが、
方法がわかりません。
選択されている内容だけをリストボックスに表示する方法は
見つけたのですが、同じ状態で選択される方法がわかりません。
ご回答、宜しくお願いします。

Aベストアンサー

> 同じテーブルに連結されているリストボックス

とのことですが、ご質問のケースでは、必要な情報はリストボックスの値集合
ソース(RowSource)が同じかどうかだと思います。
(例えば、一方のRowSourceがTableA、他方のRowSourceがTableAを元に
 並べ替えだけ行ったQueryA、といった場合は、Selectedプロパティでは
 対応できないと思いますので・・・)

ですので、とりあえず、
 ・2つのリストボックスのRowSourceは共通
 ・1画面目の名前は「MF1」、2画面目は「MF2」
 ・1画面目のリストボックスは「LB1」、2画面目は「LB2」
 ・2画面目をアクティブにした時点で、1画面目での選択を反映
という前提で回答させて戴きます。

Private Sub Form_Activate()
On Error GoTo エラー処理

Dim FName As String, CName(1 To 2) As String
Dim Frm As Form, Cntl(1 To 2) As Control
Dim ItmCnt As Integer, i As Integer

'以下の3つの変数への代入値を、実際のフォーム名・コントロール名に
'してやれば、他の部分のコードは変更不要(のはず・・・)
FName = "MF1"       '1画面目のフォーム名
CName(1) = "LB1"     '1画面目のリストボックス名
CName(2) = "LB2"     '2画面目のリストボックス名

Set Frm = Forms(FName)
Set Cntl(1) = Frm.Controls(CName(1))
Set Cntl(2) = Me.Controls(CName(2))
ItmCnt = Cntl(1).ListCount - 1

For i = 0 To ItmCnt
Cntl(2).Selected(i) = Cntl(1).Selected(i)
Next

終了処理:
Set Frm = Nothing
Set Cntl(1) = Nothing
Set Cntl(2) = Nothing
Exit Sub

エラー処理:
MsgBox Err & ":" & Error$, , Me.Name & " Activate"
Resume 終了処理

End Sub


以上のコードを2画面目のフォームの「アクティブ時」のイベントに記述して
やれば、2画面目に切り替えたときに、1画面目での選択が反映されると
思います。

・・・ようするに、Selectedプロパティは参照・編集とも可能なので、片っ端
からベタで代入してしまいました、というわけです(汗)
なので、このやり方だと、2画面側がアクティブになる際には必ず1画面目も
開かれている必要があります。
1画面目を閉じたいようでしたら、
 a)配列変数に一旦記録してから2画面目で書き戻してやるか、
 b)2画面目でのコード記述場所を「開くとき(Open)」にして、「For ~ Next」を
 終えた後に2画面目側から1画面目を閉じてやるようにする、
といったような変更をして下さい。

> 同じテーブルに連結されているリストボックス

とのことですが、ご質問のケースでは、必要な情報はリストボックスの値集合
ソース(RowSource)が同じかどうかだと思います。
(例えば、一方のRowSourceがTableA、他方のRowSourceがTableAを元に
 並べ替えだけ行ったQueryA、といった場合は、Selectedプロパティでは
 対応できないと思いますので・・・)

ですので、とりあえず、
 ・2つのリストボックスのRowSourceは共通
 ・1画面目の名前は「MF1」、2画面目は「MF2」
 ・1画面目のリストボック...続きを読む


人気Q&Aランキング