Access VBA質問箱 IV

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

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


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

【9200】Re:クエリAとクエリBのマージ
回答  Gin_II  - 07/3/16(金) 17:48 -

引用なし
パスワード
   >例)
> クエリA  抽出データ30件
> クエリB  抽出データ20件
>
>  この2つのクエリをマージして
>   ↓
>
> クエリC  抽出データ50件
>
>を作成したいと思っています。
>
>ユニオンクエリでできるみたいですが、
>記述方法が良くわかりません。

SELECT * FROM クエリA
UNION ALL
SELECT * FROM クエリB

では?
・ツリー全体表示

【9199】Re:VBAによるADO接続
発言  イチコ  - 07/3/16(金) 17:47 -

引用なし
パスワード
   ▼まさ7251 さん:
>>しかし、アクセスDBにつなぐADO接続が上手くいきません。
>>以下に、参考サイトを見て書いたコードを貼ります。
>>どなたか問題点がわかる方、ご教授下さい。
>>(アクセスに関しては全くの初心者です。)
>  
>どこに書いたのでしょうか。
>Excelですか?VB上ですか?
>
>どのように上手くいかないのでしょうか。
>エラーが出るのですか。
>それとも、データが張り付かないだけでしょうか。
>
>もう少し情報を提示すべきです。
>
>> 'レコードセットを開く。
>>    cnn.Open "結合クエリ仮" ', cnn, adOpenForwardOnly, adLockReadOnly
>とりあえず、ここはおかしいと思います。

まささん早速のレスありがとうございます。
>どこに書いたのでしょうか。
>Excelですか?VB上ですか?
VBです

>どのように上手くいかないのでしょうか。
エラーがでております。
メッセージは、「この操作を実行するために接続を使用できません。
このコンテキストで閉じているかあるいは無効です」がでております。
>とりあえず、ここはおかしいと思います。
間違って記入しました cnn.Open を rst.Open に変更したのですが、
そこでこけているようです。
・ツリー全体表示

【9198】クエリAとクエリBのマージ
質問  Makiko  - 07/3/16(金) 17:30 -

引用なし
パスワード
   ACCESS初心者です。
フィールドが一致する2つのクエリがあります。
(抽出したデータは重複しません。)
その2つのクエリを1つにしたいのですが、
どのようにすればよろしいのでしょうか?

例)
 クエリA  抽出データ30件
 クエリB  抽出データ20件

  この2つのクエリをマージして
   ↓

 クエリC  抽出データ50件

を作成したいと思っています。

ユニオンクエリでできるみたいですが、
記述方法が良くわかりません。
どなたか教えてください。
よろしくお願いします。
・ツリー全体表示

【9197】Re:VBAによるADO接続
発言  まさ7251  - 07/3/16(金) 17:27 -

引用なし
パスワード
   >しかし、アクセスDBにつなぐADO接続が上手くいきません。
>以下に、参考サイトを見て書いたコードを貼ります。
>どなたか問題点がわかる方、ご教授下さい。
>(アクセスに関しては全くの初心者です。)
  
どこに書いたのでしょうか。
Excelですか?VB上ですか?

どのように上手くいかないのでしょうか。
エラーが出るのですか。
それとも、データが張り付かないだけでしょうか。

もう少し情報を提示すべきです。

> 'レコードセットを開く。
>    cnn.Open "結合クエリ仮" ', cnn, adOpenForwardOnly, adLockReadOnly
とりあえず、ここはおかしいと思います。
・ツリー全体表示

【9196】Re:日付と時間
お礼  Makiko  - 07/3/16(金) 17:09 -

引用なし
パスワード
   お返事が遅くなりまして、申し訳ございませんでした。。
わかりました。どうもありがとうございました。
また、教えてくださいね。
・ツリー全体表示

【9195】VBAによるADO接続
質問  イチコ  - 07/3/16(金) 16:55 -

引用なし
パスワード
   始めまして、イチコと申します。
OS:XP
Access2003
Excel2003
Visual Studio 6.0

この環境でエクセルファイルのある数字(ID番号)をキーにして
アクセスのデータをごっそりエクセルにインポートしたいと考えております。

しかし、アクセスDBにつなぐADO接続が上手くいきません。
以下に、参考サイトを見て書いたコードを貼ります。
どなたか問題点がわかる方、ご教授下さい。
(アクセスに関しては全くの初心者です。)

Sub MakeDB()
  Dim cnn As New ADODB.Connection
  Dim rst As New ADODB.Recordset
  Dim dbName As String
  Dim dbPath As String
  
  '対象のファイル名を設定する
  dbName = "ファイル名.mdb"
  'MDBのPathを設定する
  dbPath = "C:\"
  
  'MDBと接続
  cnn.Open "Provider = Microsoft.Jet.OLEDB.4.0;DataSource =" & dbPath & dbName & ";"

  'レコードセットを開く。
   cnn.Open "結合クエリ仮" ', cnn, adOpenForwardOnly, adLockReadOnly
  'ここでSQL文を作成し、エクセルから得たIDをwhere句に指定してデータを得たい
  
  rst.Close
  cnn.Close
  Set cnn = Nothing
  Set rst = Nothing
  
End Sub

よろしくお願いします。
・ツリー全体表示

【9194】Re:[無題]
発言  Gin_II  - 07/3/16(金) 16:20 -

引用なし
パスワード
   >    これだと画面がチカチカするので、他の方法あればお願いします。

前後に、

Echo メソッド (Application オブジェクト)
を使ってやれば、改善されるかもしれないですね。
・ツリー全体表示

【9193】Re:[無題]
回答  たん  - 07/3/16(金) 15:09 -

引用なし
パスワード
   とはいえ、回答しないのは意地悪と思われるのもちょっと癪なので。

>    これだと画面がチカチカするので、他の方法あればお願いします。

画面がちらつくのは、フォーム内で、条件付き書式等や、イベント等で、
画面で、色付け処理とか、DLookupを多重に使っている為のせいと
思われるので、仕方がないでしょう。

>2.リストボックスの▼の部分を大きくする方法ありませんか?

ありません。
・ツリー全体表示

【9192】Re:レポート
回答  Gin_II  - 07/3/16(金) 13:25 -

引用なし
パスワード
   >1社の請求書は出来ていますが、

どんなテーブル構成
どのようにデータを入れている
どうやってレポートに表示している

なんかの情報がないのに、

>親会社と子会社の2社を1枚の請求書に
>記載でき、合計も1社の合計と2社の合計を
>併記したいのですが、どのようにすればよいのでしょうか。

やりたいことだけ書かれても・・・
しかも、根本的に変更が必要な可能性大ですし ^^;

顧客マスタのようなテーブルがあると思いますが、それで親会社・子会社の
入力はどのようにしているのでしょうか?
・ツリー全体表示

【9191】Re:礼儀をわきまえましょう
回答  たん  - 07/3/16(金) 13:20 -

引用なし
パスワード
   ▼[名前なし] さん:

名前も提示しない、質問の題も書かないような礼儀のなっていない人には
答えを提示したいという人は中々いないのではないでしょうか?
・ツリー全体表示

【9190】[無題]
質問  [名前なし]  - 07/3/16(金) 13:17 -

引用なし
パスワード
   1.画面を最初から最大表示する方法を教えていただけませんか?

  DoCmd.OpenForm "入力2.検査内容", acNormal, "", "", , acNormal
  DoCmd.Maximize

    これだと画面がチカチカするので、他の方法あればお願いします。


2.リストボックスの▼の部分を大きくする方法ありませんか?
    教えてください。

よろしくお願いします。
・ツリー全体表示

【9189】レポート
質問  ヒロ  - 07/3/16(金) 12:54 -

引用なし
パスワード
   レポートの質問です。
1社の請求書は出来ていますが、
親会社と子会社の2社を1枚の請求書に
記載でき、合計も1社の合計と2社の合計を
併記したいのですが、どのようにすればよいのでしょうか。
お教えいただければ大変ありがたいです。
・ツリー全体表示

【9188】Re:データ表示
お礼  [名前なし]  - 07/3/16(金) 11:41 -

引用なし
パスワード
   ▼Gin_II さん:
>>コントロールソースだと検査データに登録保存はされないので
>>検査データにも保存されるような方法はないでしょうか?
>
>テーブルの正規化がされていれば、検査データ(テーブル)に
>
>>品種、表示コード、寸法の複数の項目を
>こういった項目を保存する必要はないと思いますけど。


すいません
プロシージャーで作成できました。
・ツリー全体表示

【9187】Re:データ表示
回答  Gin_II  - 07/3/16(金) 10:40 -

引用なし
パスワード
   >コントロールソースだと検査データに登録保存はされないので
>検査データにも保存されるような方法はないでしょうか?

テーブルの正規化がされていれば、検査データ(テーブル)に

>品種、表示コード、寸法の複数の項目を
こういった項目を保存する必要はないと思いますけど。
・ツリー全体表示

【9186】Re:データ表示
質問  [名前なし]  - 07/3/16(金) 10:14 -

引用なし
パスワード
   ▼Gin_II さん:
>>製品マスターの製品コードをリストボックスの中から選択することで
>>品種、表示コード、寸法の複数の項目を製品マスターから表示するようにした
>>いのですが
>
>製品コードのリストボックスで、値集合ソース・列数プロパティで
>複数列設定しておけば、別のテキストボックスのコントロールソースに、
>
>=リストボックス名.Column(2)
>とかで、別の列を参照することができます。


ありがとうございます
コントロールソースだと検査データに登録保存はされないので
検査データにも保存されるような方法はないでしょうか?
・ツリー全体表示

【9185】Re:データ表示
回答  Gin_II  - 07/3/16(金) 8:39 -

引用なし
パスワード
   >製品マスターの製品コードをリストボックスの中から選択することで
>品種、表示コード、寸法の複数の項目を製品マスターから表示するようにした
>いのですが

製品コードのリストボックスで、値集合ソース・列数プロパティで
複数列設定しておけば、別のテキストボックスのコントロールソースに、

=リストボックス名.Column(2)
とかで、別の列を参照することができます。
・ツリー全体表示

【9184】データ表示
質問  ヤン  - 07/3/15(木) 21:59 -

引用なし
パスワード
   製品の検査データを作成したいのですが
製品マスターの製品コードをリストボックスの中から選択することで
品種、表示コード、寸法の複数の項目を製品マスターから表示するようにした
いのですが
教えていただけませんか?

修理、不良内容を登録していきたいのです。
よろしくおねがいします。
・ツリー全体表示

【9183】Re:あいまい検索
お礼  野良ペンギン  - 07/3/15(木) 14:29 -

引用なし
パスワード
   ありがとうございました。
ご指摘通り直しましたらすぐに動きました。
・ツリー全体表示

【9182】Re:あいまい検索
回答  Gin_II  - 07/3/15(木) 13:10 -

引用なし
パスワード
   >   Set rs = db.OpenRecordset("T_業者マスタ", dbOpenDynaset)

テーブル名等に、半角カナなどは、使わないほうがいいですよ。


>   rs.Filter = "業者名 like '*' & " & strRet & " & '*'"

  rs.Filter = "業者名 like '*" & strRet & "*'"

でしょうか。
・ツリー全体表示

【9181】あいまい検索
質問  野良ペンギン  - 07/3/15(木) 11:51 -

引用なし
パスワード
   winXP
Access2002です。

以下についてパラメータが足りないとのメッセージが出てしまいます。
恐らくフィルタの指定についてうまくないのだと思いますがわかりません。
どなたかご指導お願いします。


  Dim db As DAO.Database
  Dim rs As DAO.Recordset
  Dim strMsg As String
  Dim strRet As String
  
  Set db = CurrentDb
  Set rs = db.OpenRecordset("T_業者マスタ", dbOpenDynaset)
  
  strRet = InputBox("業者名に含まれる文字列を入力して下さい。", "")
  
  If strRet = "" Then
  
  MsgBox "入力が不正です。"
  End
  
  End If
  
  rs.Filter = "業者名 like '*' & " & strRet & " & '*'"
  
  Set rs = rs.OpenRecordset()
  
  Do Until rs.EOF
  
    strMsg = strMsg & vbNewLine & rs!業者コード & " : " & rs!業者名 & " : " & rs!業者区分
    rs.MoveNext
    
  Loop
  
  MsgBox "検索結果" & vbNewLine & strMsg
  
  Set db = Nothing
  Set rs = Nothing
  
・ツリー全体表示

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