質問編集履歴
5
関連コードを追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -143,4 +143,39 @@
|
|
143
143
|
|
144
144
|
> ``Me.SurchList`` というように記述しましょう。
|
145
145
|
|
146
|
-
修正させていただきます。ご指摘ありがとうございます。とても助かります。
|
146
|
+
修正させていただきます。ご指摘ありがとうございます。とても助かります。
|
147
|
+
|
148
|
+
### 追記5
|
149
|
+
|
150
|
+
今回の問題に関係があるかもしれませんので、別のモジュールに書かれてあるコードを併載させていただきます。
|
151
|
+
どうぞよろしくお願いします。
|
152
|
+
|
153
|
+
```vba
|
154
|
+
Option Explicit
|
155
|
+
|
156
|
+
'---ACCESS接続用
|
157
|
+
Private adoCn As Object
|
158
|
+
Private adoRs As Object
|
159
|
+
Private strSQL As String
|
160
|
+
|
161
|
+
'データベースに接続
|
162
|
+
Sub ConnectDB(flg As Boolean)
|
163
|
+
Dim DBpath As String
|
164
|
+
|
165
|
+
'DBpath = ThisWorkbook.Path
|
166
|
+
DBpath = "\○○○\○○○\○○○"
|
167
|
+
If flg = True Then Set adoRs = CreateObject("ADODB.Recordset")
|
168
|
+
|
169
|
+
Set adoCn = CreateObject("ADODB.Connection")
|
170
|
+
adoCn.Open "Provider = Microsoft.ACE.OLEDB.12.0;Data Source = " & DBpath & "\○○○.mdb;"
|
171
|
+
End Sub
|
172
|
+
|
173
|
+
'データベースを切断
|
174
|
+
Sub CutDB(flg As Boolean)
|
175
|
+
|
176
|
+
If flg = True Then adoRs.Close
|
177
|
+
adoCn.Close
|
178
|
+
Set adoRs = Nothing
|
179
|
+
Set adoCn = Nothing
|
180
|
+
End Sub
|
181
|
+
```
|
4
追記4を追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -105,4 +105,42 @@
|
|
105
105
|
プロパティのオブジェクト名は一致しているのですが、うまく行きません……
|
106
106
|
スペルミスのご指摘ありがとうございます。恥をかかずにすみました。
|
107
107
|
|
108
|
-
ただ、まだ解決には至っておりません……
|
108
|
+
ただ、まだ解決には至っておりません……
|
109
|
+
|
110
|
+
### 追記4(2018/03/15)
|
111
|
+
|
112
|
+
> まず、デバッグするときは、エラー処理はコメントにしましょう。
|
113
|
+
|
114
|
+
ご指摘のとおりしましたところ、次の行にエラーが出ておりました。
|
115
|
+
|
116
|
+
```vba
|
117
|
+
adoRs.Open strSQL, adoCn
|
118
|
+
```
|
119
|
+
``strSQL = "SELECT 顧客コード,姓,名,住所1,住所2,電話番号1,電話番号2 FROM 顧客マスター"``のすぐ下の行です。
|
120
|
+
|
121
|
+
エラーメッセージは次のとおりです。
|
122
|
+
**実行エラー'91':**
|
123
|
+
**オブジェクト変数またはWithブロック変数が設定されていません。**
|
124
|
+
|
125
|
+
> どのような「検索」がしたいのですか。言葉で説明してみてください。
|
126
|
+
特に検索対象フィールドは何か、どのような条件で検索するのかを説明してください。
|
127
|
+
|
128
|
+
検索対象フィールドは
|
129
|
+
**「姓」「セイ」「電話番号1」「電話番号2」**
|
130
|
+
というのを想定しています。
|
131
|
+
|
132
|
+
リストボックスに表示させたいフィールドが
|
133
|
+
**「顧客コード」「姓」「名」「住所1」「住所2」「電話番号1」「電話番号2」**
|
134
|
+
でした。
|
135
|
+
|
136
|
+
検索条件についてですが、
|
137
|
+
**1つめのテキストボックスに「姓」または「セイ」を入力する**
|
138
|
+
**2つめのテキストボックスに「電話番号」を入力する**
|
139
|
+
ということを想定しています。
|
140
|
+
|
141
|
+
**このうちのいずれかがデータと一致**していたら、検索結果が表示されるようにしたいです。
|
142
|
+
テキストボックスは2つ用意してますが、使用するのは基本的にどちらか1つで、より絞り込んで検索したい場合は2つとも使用する、というふうに考えております。
|
143
|
+
|
144
|
+
> ``Me.SurchList`` というように記述しましょう。
|
145
|
+
|
146
|
+
修正させていただきます。ご指摘ありがとうございます。とても助かります。
|
3
引き続き、リストボックスについて
title
CHANGED
File without changes
|
body
CHANGED
@@ -92,4 +92,17 @@
|
|
92
92
|
|
93
93
|
○○ には CreatObject("△△")を使うということで合っていますでしょうか?
|
94
94
|
|
95
|
-
取り急ぎコメントしております。自分でもここら辺のことを調べてみます。
|
95
|
+
取り急ぎコメントしております。自分でもここら辺のことを調べてみます。
|
96
|
+
|
97
|
+
(追記3)
|
98
|
+
> おそらくadoRsはConnectDB関数の中で操作しているはずです。
|
99
|
+
|
100
|
+
おっしゃる通りで、確認できました。
|
101
|
+
|
102
|
+
>SurchListは画面上に貼り付けたリストボックスのはずです。
|
103
|
+
|
104
|
+
これもその通りです(上記質問では説明不足ですみません)。ユーザーフォームに貼り付けています。
|
105
|
+
プロパティのオブジェクト名は一致しているのですが、うまく行きません……
|
106
|
+
スペルミスのご指摘ありがとうございます。恥をかかずにすみました。
|
107
|
+
|
108
|
+
ただ、まだ解決には至っておりません……
|
2
オブジェクトについて
title
CHANGED
File without changes
|
body
CHANGED
@@ -67,7 +67,7 @@
|
|
67
67
|
End Sub
|
68
68
|
```
|
69
69
|
|
70
|
-
追記
|
70
|
+
(追記)
|
71
71
|
|
72
72
|
Dim SurchList As Object を追加してみましたが、やはり同じ症状でした。。
|
73
73
|
|
@@ -76,4 +76,20 @@
|
|
76
76
|
「オブジェクト変数またはWithブロック変数が設定されていません。
|
77
77
|
SELECT 顧客コード,姓,名,住所1,住所2,電話番号1,電話番号2 FROM 顧客マスター」
|
78
78
|
|
79
|
-
該当箇所は書籍やネットを参照した感じだと、これで合ってそうなので、どう間違っているのか分かりません。
|
79
|
+
該当箇所は書籍やネットを参照した感じだと、これで合ってそうなので、どう間違っているのか分かりません。
|
80
|
+
|
81
|
+
|
82
|
+
(追記2)
|
83
|
+
なるほど。オブジェクトについてよく理解していませんでした。
|
84
|
+
|
85
|
+
Set adoRs = ○○
|
86
|
+
Set SurchList = ○○
|
87
|
+
|
88
|
+
という記述が必要だということでよろしいでしょうか?
|
89
|
+
|
90
|
+
(追記2-2)
|
91
|
+
> set SurchList = ○○ ←インスタンス(実体)への参照を作る
|
92
|
+
|
93
|
+
○○ には CreatObject("△△")を使うということで合っていますでしょうか?
|
94
|
+
|
95
|
+
取り急ぎコメントしております。自分でもここら辺のことを調べてみます。
|
1
SurchListの宣言を記述しての結果、イミディエイトウィンドウに表示されていたテキストを追記しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -65,4 +65,15 @@
|
|
65
65
|
Debug.Print strSQL
|
66
66
|
|
67
67
|
End Sub
|
68
|
-
```
|
68
|
+
```
|
69
|
+
|
70
|
+
追記
|
71
|
+
|
72
|
+
Dim SurchList As Object を追加してみましたが、やはり同じ症状でした。。
|
73
|
+
|
74
|
+
さきほど気づいたのですが、イミディエイトウィンドウに以下のテキストが表示されていました。
|
75
|
+
|
76
|
+
「オブジェクト変数またはWithブロック変数が設定されていません。
|
77
|
+
SELECT 顧客コード,姓,名,住所1,住所2,電話番号1,電話番号2 FROM 顧客マスター」
|
78
|
+
|
79
|
+
該当箇所は書籍やネットを参照した感じだと、これで合ってそうなので、どう間違っているのか分かりません。
|