teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

5

追記

2015/11/28 14:17

投稿

退会済みユーザー
answer CHANGED
@@ -22,8 +22,10 @@
22
22
  FROM テーブル1 INNER JOIN テーブル2 ON [テーブル1].[フィールド1] = [テーブル2].[フィールド1];
23
23
  ```
24
24
 
25
+ ①これらのクエリをVBA内でクエリ発行。
25
- これらのクエリをVBAで記述し、配列やコレクションで値を取得し、
26
+ クエリ結果の値を配列やコレクションで取得
27
+ ③取得した行数文、Forなどの繰り返し文で実行
26
- Forなどの繰り返し文で条件分岐させれば、お望みの処理は可能かと思います。
28
+ 繰り返し文で条件分岐させれば、お望みの処理は可能かと思います。
27
29
 
28
30
  元のテーブルにフラグを書き込みたいとの事であれば、条件分岐の中でInsert文を発行すれば可能です。
29
31
 

4

誤字脱字

2015/11/28 14:17

投稿

退会済みユーザー
answer CHANGED
@@ -22,7 +22,7 @@
22
22
  FROM テーブル1 INNER JOIN テーブル2 ON [テーブル1].[フィールド1] = [テーブル2].[フィールド1];
23
23
  ```
24
24
 
25
- これらのクエリをVBAで記述し、値を取得した配列やコレクションで取得し、
25
+ これらのクエリをVBAで記述し、配列やコレクションで値を取得し、
26
26
  Forなどの繰り返し文で、条件分岐させれば、お望みの処理は可能かと思います。
27
27
 
28
28
  元のテーブルにフラグを書き込みたいとの事であれば、条件分岐の中でInsert文を発行すれば可能です。

3

追記

2015/11/28 14:13

投稿

退会済みユーザー
answer CHANGED
@@ -28,4 +28,11 @@
28
28
  元のテーブルにフラグを書き込みたいとの事であれば、条件分岐の中でInsert文を発行すれば可能です。
29
29
 
30
30
  VBAはあくまでプログラムなので、データを結び付けてゴニョゴニョする場合は、
31
- データベースの機能(クエリ=SQL)を使った方が便利ですよ。
31
+ データベースの機能(クエリ=SQL)を使った方が便利ですよ。
32
+
33
+ 追記:
34
+ VBA側(プログラム側)でも出来なくはないですが、複雑怪奇になります。
35
+ それを解消する為に考え出されたのが、RDB(Relational Database)であり、
36
+ SQL(Structured English Query Language)=クエリです。
37
+ 余談として、スピードを重視する一部業界では、
38
+ 逆に、SQLを使わず複雑怪奇にプログラムで実現させている場合もあります。

2

誤字の修正

2015/11/28 14:11

投稿

退会済みユーザー
answer CHANGED
@@ -22,8 +22,8 @@
22
22
  FROM テーブル1 INNER JOIN テーブル2 ON [テーブル1].[フィールド1] = [テーブル2].[フィールド1];
23
23
  ```
24
24
 
25
- これらのクエリをVBAで記述し、値を取得した配列やコレクション
25
+ これらのクエリをVBAで記述し、値を取得した配列やコレクションで取得し、
26
- Forなどの繰り返し文で、条件分岐させれば、お望みの処理は可能かと思います。
26
+ Forなどの繰り返し文で、条件分岐させれば、お望みの処理は可能かと思います。
27
27
 
28
28
  元のテーブルにフラグを書き込みたいとの事であれば、条件分岐の中でInsert文を発行すれば可能です。
29
29
 

1

書式の改善

2015/11/28 13:59

投稿

退会済みユーザー
answer CHANGED
@@ -19,7 +19,8 @@
19
19
 
20
20
  ```SQL
21
21
  SELECT [テーブル1].[フィールド1]
22
- FROM テーブル1 INNER JOIN テーブル2 ON [テーブル1].[フィールド1] = [テーブル2].[フィールド1];```
22
+ FROM テーブル1 INNER JOIN テーブル2 ON [テーブル1].[フィールド1] = [テーブル2].[フィールド1];
23
+ ```
23
24
 
24
25
  これらのクエリをVBAで記述し、値を取得した配列やコレクションを
25
26
  Forなどの繰り返し文で、条件で分岐させれば、お望みの処理は可能かと思います。