Access VBA質問箱 IV

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

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


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

【8228】Re:VBAにてパラメータに関する質問
質問  Yaesu  - 06/7/12(水) 16:38 -

引用なし
パスワード
   ▼クロ さん:
>こんにちは
>パラメータはどのような風にしてますか?
>1.クエリの抽出条件に [○○○を入れてください]みたいにしている
>2.クエリの抽出条件にフォームのテキストボックスなどを指定している
>3.そのた(詳しく)

1.のようにしています。
・ツリー全体表示

【8227】Re:Ctrlボタン&Shiftボタン
回答  Gin_II  - 06/7/12(水) 16:33 -

引用なし
パスワード
   >ACCESS97を使用するに当たって他にも便利な省略機能があったら教えて下さい。

Access2003ですが、

Microsoft Office アシスタント: キーボードのショートカット
http://office.microsoft.com/ja-jp/assistance/HP030898861041.aspx

こんなのがあります。
また、ショートカットキーは、Windowsのアプリケーションだと共通のものなども
多いので、Windows のヘルプも確認したほうがいいかもしれないですね。
・ツリー全体表示

【8226】Re:Ctrlボタン&Shiftボタン
発言  クロ  - 06/7/12(水) 16:16 -

引用なし
パスワード
   ヘルプで「キーボードショートカット」で調べてみては?
・ツリー全体表示

【8225】クエリーでの番号付加について
質問  KT  - 06/7/12(水) 15:58 -

引用なし
パスワード
   クエリーで番号を付加したいのですがどのように
すればいいのか御教示お願いします。

下記のようにテーブルから項目1と項目2をクエリーで抽出し
上から順に番号を付加させていきたい
(NO付加の項目をクエリーで追加し順に番号を付けたい。)
どのようにすればできるのでしょうか?
簡単にできそうですがなかなかできなくて困っています。

項目1  項目2  NO付加

AAAA  1234    1
CCCC  2346    2
BBBB  3456    3
DDDD  3333    4
・ツリー全体表示

【8224】SQLでの検索
質問  まっきん  - 06/7/12(水) 15:04 -

引用なし
パスワード
   '-----------------------------------------------
'絞込み検索のときに検索キーワードが
'スペースで区切られて入力されたとき
'-----------------------------------------------

'--- キーワードの例(スペースで区切られている) ---
keyword = "サンプル ダウンロード"

'--- 全角スペースを半角スペースに変換 ---
keyword = Replace(keyword," "," ")

'--- キーワードを半角スペースで分割 ---
SplitKeyword = Split(keyword," ")

'--- SQL作成 ---
StrSQL = " select * from table1 where 0 = 0"

'--- 分割されたキーワードをSQLステートメントに反映 ---
For i = 0 to UBound(SplitKeyword)
StrSQL = StrSQL & " and field1 like '%" & SplitKeyword(i) & "%'"
Next

上記のようにフォームの検索文字をスペースをあけることで
絞込み検索をしたいのですが、その検索範囲をfield1〜field10まで
にすることができません・・・

どうすればいいのでしょうか?お願いします。
・ツリー全体表示

【8223】Re:VBAにてパラメータに関する質問
発言  クロ  - 06/7/12(水) 14:15 -

引用なし
パスワード
   こんにちは
パラメータはどのような風にしてますか?
1.クエリの抽出条件に [○○○を入れてください]みたいにしている
2.クエリの抽出条件にフォームのテキストボックスなどを指定している
3.そのた(詳しく)
・ツリー全体表示

【8222】Ctrlボタン&Shiftボタン
質問  yummy  - 06/7/12(水) 14:04 -

引用なし
パスワード
   こんにちは!!!

早速なんですが、CtrlボタンやShiftボタンを使って便利な機能ができるとのことなのですが、
Ctrlボタン+C → コピー
Ctrlボタン+B → 太字    
  貼り付け、切り取り、保存くらいしか知らないのです...
ACCESS97を使用するに当たって他にも便利な省略機能があったら教えて下さい。
よろしくお願いしますm(_ _)m
・ツリー全体表示

【8221】Re:自分のコードを確認した?
お礼  文進 E-MAIL  - 06/7/12(水) 13:58 -

引用なし
パスワード
   ▼たん さん:
>>VBAは初級で、もっとスキルアップしないと、
>
>スキルアップうんぬんというより、まずは、
>
>「自分の書いたコードを、ヘルプ片手に追いかけて、何やってるかを把握する」
>
>という基本に忠実に作業すべきですね。
>
># 自分のやってる事を把握しないで、結果だけ求めても、結果が手に入る事は
># ありません。
★喝ありがとうございました。
・ツリー全体表示

【8220】Re:テーブルの項目について
お礼  たけし  - 06/7/12(水) 11:16 -

引用なし
パスワード
   ▼クロ さん:
ありがとうございます。
早速やってみます。
いろいろありがとうございます。
また何かありましたらよろしくお願いします。
・ツリー全体表示

【8219】Re:テーブルの項目について
発言  クロ  - 06/7/12(水) 11:04 -

引用なし
パスワード
   もう一つ

Dim db(1) As DAO.Database
Dim rs(1) As DAO.Recordset
Dim i As Integer
Dim strSQL(3) As String

'委託者テーブルをグループ化して委託者コードを取得
strSQL(0) = "SELECT 委託者コード FROM 委託者テーブル GROUP BY 委託者コード"
'strSQL(0)をサブクエリ化して委託者コード/店番リストクエリを作成
strSQL(1) = "SELECT Q1.委託者コード, 店舗テーブル.店番" & _
         " FROM (" & strSQL(0) & ") AS Q1, 店舗テーブル" & _
         " GROUP BY Q1.委託者コード, 店舗テーブル.店番" & _
         " ORDER BY Q1.委託者コード, 店舗テーブル.店番;"
'既存テーブル削除SQL
strSQL(2) = "DROP TABLE 新しいテーブル;"
'新規テーブル作成SQL
strSQL(3) = "CREATE TABLE 新しいテーブル (委託者コード LONG, 店番 TEXT(50), 金額 MONEY);"
         
         
Set db(1) = CurrentDb
On Error GoTo el
db(1).Execute strSQL(2)
el:
db(1).Execute strSQL(3)

Set rs(1) = db(1).OpenRecordset("新しいテーブル")
Set db(0) = CurrentDb
Set rs(0) = db(0).OpenRecordset(strSQL(1))

rs(0).MoveLast
rs(0).MoveFirst

For i = 1 To rs(0).RecordCount
  rs(1).AddNew
  rs(1)![委託者コード] = rs(0)![委託者コード]
  rs(1)![店番] = rs(0)![店番]
  rs(1)![金額] = CCur(Nz(DLookup("金額", "委託者テーブル", _
           "[委託者コード]=" & rs(0)![委託者コード] & _
           "And [店番]='" & rs(0)![店番] & "'"), 0))
  rs(1).Update
  rs(0).MoveNext
Next i

rs(0).Close: Set rs(0) = Nothing
db(0).Close: Set db(0) = Nothing
rs(1).Close: Set rs(1) = Nothing
db(1).Close: Set db(1) = Nothing
・ツリー全体表示

【8218】Re:テーブルの項目について
回答  クロ  - 06/7/12(水) 10:20 -

引用なし
パスワード
   おはようございます。
委託者テーブルから委託者コードを重複なく取りだし(サブクエリのQ1)、
店番テーブルの店番とで、委託者コード/店番クエリを作成(サブクエリ
Q2)します。

で、こんな感じです。
SELECT Q2.委託者コード, Q2.店番, CCur(Nz([金額],0)) AS 式1 INTO 新しいテーブル名
FROM (SELECT Q1.委託者コード, 店舗テーブル.店番
FROM (SELECT 委託者コード FROM 委託者テーブル GROUP BY 委託者コード) AS Q1, 店舗テーブル
GROUP BY Q1.委託者コード, 店舗テーブル.店番
ORDER BY Q1.委託者コード, 店舗テーブル.店番) AS Q2 LEFT JOIN 委託者テーブル ON (Q2.店番 = 委託者テーブル.店番) AND (Q2.委託者コード = 委託者テーブル.委託者コード);

※金額をデータ型変換関数で通貨型(CCur)にしてあります。
  ここは適宜に変更してください。
 前回同様に新規テーブル名は「新しいテーブル名」としてありますので
 こちらも適宜に変更してください。
・ツリー全体表示

【8216】VBAにてパラメータに関する質問
質問  Yaesu  - 06/7/12(水) 10:15 -

引用なし
パスワード
   お世話になります。
以下のVBAを実行すると、エラーがでてしまいます。
其の原因はテーブルABCのデータソース(クエリ)にはパラメータが仕込んでいるからだと推測ですが・・・。
パラメータを外すことはできなくて、解決策はあるのでしょうか?
ご伝授ください。

Function text_Export01()
Const csXlPath As String = "C:\year\ABC.xls"
Dim i As Long
Dim xlsApp As Object
Dim xlsWkb As Object
Dim RS As DAO.Recordset
  Set RS = CurrentDb.OpenRecordset("ABC", dbOpenSnapshot)・・・黄色反転
  Set xlsApp = CreateObject("Excel.Application")
  Set xlsWkb = xlsApp.Workbooks.Open(csXlPath)
  'xlsApp.Visible = True
  With xlsWkb.Sheets("cho_year")
    .Range("A1:H65560").ClearContents
    For i = 1 To RS.Fields.Count
      .Cells(1, i).Value = RS(i - 1).Name
    Next
    .Range("A2").CopyFromRecordset RS
  End With
  xlsWkb.Close True: Set xlsWkb = Nothing
  xlsApp.Quit: Set xlsApp = Nothing
/
・ツリー全体表示

【8215】Re:テーブルの項目について
質問  たけし  - 06/7/12(水) 9:49 -

引用なし
パスワード
   クロ さん
おはようございます。
いろいろありがとうございます。
新規のテーブルを作成するのでが、
店舗テーブルには、店番が051・052・053・054とあり
委託者テーブルには
 委託者コード 店番   金額
  10001    051   100
  10001    052   100
  10001    053   200
  10002    052   200
  10002    053   200
結果
  店番 委託者コード 金額
  051  10001    100
  052  10001    100
  053  10001    200
  054  10001     0
  051  10002     0
  052  10002    200
  053  10002    200
  054  10002     0
したいのです。

SELECT 委託者テーブル.委託者コード, 店舗テーブル.店番, 委託者テーブル.金額 INTO 新規テーブル名
FROM 委託者テーブル, 店舗テーブル
ORDER BY 委託者テーブル.委託者コード, 店舗テーブル.店番;
ですと
結果
  店番 委託者コード 金額
  051  10001    100
  052  10001    100
  053  10001    200
  052  10002    200
  053  10002    200
になりませんか?
SQLはあまりよくわからないんです。
いつもモージュールで作成しています。
本当に申し訳ありませんがよろしくお願いします。
・ツリー全体表示

【8214】Re:件数指定のSQLについて
お礼  くろすけ  - 06/7/12(水) 9:22 -

引用なし
パスワード
   simさん、hatenaさん

お忙しい中、ありがとうございました。
参考にさせて頂きます。
・ツリー全体表示

【8213】Re:自分のコードを確認した?
お礼  たん  - 06/7/12(水) 8:52 -

引用なし
パスワード
   >VBAは初級で、もっとスキルアップしないと、

スキルアップうんぬんというより、まずは、

「自分の書いたコードを、ヘルプ片手に追いかけて、何やってるかを把握する」

という基本に忠実に作業すべきですね。

# 自分のやってる事を把握しないで、結果だけ求めても、結果が手に入る事は
# ありません。
・ツリー全体表示

【8212】Re:テーブルの項目について
回答  クロ  - 06/7/11(火) 17:59 -

引用なし
パスワード
   あれ?もしかしたら店舗テーブルと委託者テーブルで新規テーブルを
作るのかしら…でしたら

SELECT 委託者テーブル.委託者コード, 店舗テーブル.店番, 委託者テーブル.金額 INTO 新規テーブル名
FROM 委託者テーブル, 店舗テーブル
ORDER BY 委託者テーブル.委託者コード, 店舗テーブル.店番;

こうですかね。こちらもExecuteで上記SQLを実行でいいと思います。
※新規テーブル名は適宜に
・ツリー全体表示

【8211】Re:テーブルの項目について
回答  クロ  - 06/7/11(火) 17:33 -

引用なし
パスワード
   委託者マスタテーブルはないのでしょうか?

あるようでしたら
SQLで

INSERT INTO 委託者テーブル ( 委託者コード, 店番 )
SELECT 委託者マスタ.委託者コード, 店舗テーブル.店番
FROM 店舗テーブル, 委託者マスタ
ORDER BY 委託者マスタ.委託者コード, 店舗テーブル.店番;

Executeで上記SQLを実行すればいいのでは?
・ツリー全体表示

【8210】Re:テーブルの項目について
質問  たけし  - 06/7/11(火) 17:20 -

引用なし
パスワード
   クロ さん
質問に答えていただいてありがとうございます。
フォーム上ではなくてモジュールで処理したいのですが、
処理的にはテーブルを作成したいのです。
前回は簡単に書きましたが、本当に処理したいのは
例)
店舗テーブルにはフィールド(店番)が1から22まであります。
委託者テーブルにはフィールド(委託者コード)とフィールド(店番)フィールド(金額)があります。
委託者コードごとに店舗テーブルの店番全部をテーブルに出力したいのです。
そうすると委託者コードごとに店舗テーブルをオープンしクローズしなければ処理できないのかと思い、他に処理の方法がないかと思い前回の質問をしてしまいました。申し訳ありません。
よろしくお願いします
・ツリー全体表示

【8209】Re:テーブルの項目について
回答  クロ  - 06/7/11(火) 16:32 -

引用なし
パスワード
   こんにちは

Dlookup関数でいいのかな?

どの場面で使うのか分からないのですが、取りあえずフォーム上でとした
場合

テキストボックス3のコントロールソースに
=DlookUp("[項目2]","[テーブルA]","[項目1]=" & Me.テキストボックス1+テキストボックス2 )
だとか…
※項目1のデータ型が数値型ししてます。

テキストボックス1… 1
テキストボックス2… 2
だとした場合
テキストボックス3には… C
が返ると思います。

#テーブル上では項目と言われているところは「フィールド」といいます。
・ツリー全体表示

【8208】テーブルの項目について
質問  たけし  - 06/7/11(火) 15:15 -

引用なし
パスワード
   題名はテーブルの項目と書いてありますが、どのように書いていいか解らなかったのでとりあえずテーブルの項目についてと書いてみました。
例)
テーブルAに 項目1 項目2
        1   A
        2   B
        3   C
        4   D
        ・   ・
        ・   ・
        ・   ・
        22   Z
とある場合
テーブルAを一度読込んで何度も項目1を指定して項目2を算出する方法はあるのでしょうか?ランダムに項目1を指定して項目2を参照したいのです。
計算結果が3だったら、Cを参照し、計算結果が1だったら、Aを参照したいのです。
よろしくお願いします
 
・ツリー全体表示

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