Access VBA質問箱 IV

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

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


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

【8453】動的二次配列について
質問  タロロ  - 06/8/14(月) 10:34 -

引用なし
パスワード
   動的な二次配列を宣言したいのですが、
ループの二回目でエラーになってしまいます。
どのようにすればよいのでしょうか?
宜しくお願い致します。
Do Until rs.EOF

 iCount = iCount + 1

 ReDim Preserve myDATA(iCount, 1 To 30)
 myDATA(iCount, 1) = 社員ID
 myDATA(iCount, 2) = 名前
        :
 rs.MoveNext
Loop
・ツリー全体表示

【8452】Re:コンボボックスでの初歩的な疑問です。
回答  よろずや  - 06/8/13(日) 21:24 -

引用なし
パスワード
   複数列のコンボでは、テキストボックス部に表示されるのは
0 以外の幅の列のうち左端のものです。

ドロップダウン部には各列幅の指定通りに表示されます。

つまり、ドロップダウン部の左端と異なる内容をテキストボックス部に表示させる
には、その左側に微小幅の列を設定します。
・ツリー全体表示

【8451】コンボボックスでの初歩的な疑問です。
質問  YUU  - 06/8/12(土) 18:03 -

引用なし
パスワード
   今更と思うかもしれんませんが・・・。コンボボックスの絞り込みでの入力は、CDではなく名前で行う事は可能なんでしょうか?
現在、納品書というフォームを作っているのですが、商品を入力するときにコンボボックスを使用しています。

<商品区分CD> <商品区分名> <商品CD> <商品名> ・・・
  100      魚     1001  はまち
  200      野菜    2001  レタス
   ・
   ・
   ・
<商品区分CD>(コンボボックス)で選び、<商品CD>(コンボボックス)で選んでます。コンボボックスの絞り込みでの入力は出来るのですが、これをCDで選ぶのではなく、各名前で入力をしたいのです。


「テーブル」 商品区分リスト  商品名リスト
        商品区分CD     商品CD
        商品区分名     商品名
                  商品区分名    となっています。
・ツリー全体表示

【8450】Re:レポートで3ヵ月後の日付を表示させる...
回答  shin  - 06/8/12(土) 8:51 -

引用なし
パスワード
   >ちなみに、表示させたい日付とは下記の通りです。
>フォーム1.に入力した日付が平成18年4月20日とすると、
>レポート1.に表示させたい日付は平成18年7月19日です。

レポートの何処で使用したいのか解りませんので、基本だけ

フォームテキストボックス名=A
レポートテキストボックス名=B


B= DateSerial(Year(A) , Month(A) + 3, Day(A)) - 1

レポート詳細欄で使用するなら、詳細印刷時に
クエリでも出来ます。
・ツリー全体表示

【8449】レポートで3ヵ月後の日付を表示させるには...
質問  アギト  - 06/8/11(金) 22:41 -

引用なし
パスワード
   テーブル1.、クエリ1.、フォーム1.、レポート1.があります。
クエリ1.とは、フォーム1.のテキストボックスに日付を入力すると、
テーブル1.の中から該当するデータをレポート1.で印刷できるものです。
そこで、レポート1.に新たにテキストボックスを設けて、フォーム1.で
入力した日付の3ヵ月後の日付を、自動的に表示させることは出来ないで
しょうか?
ちなみに、表示させたい日付とは下記の通りです。
フォーム1.に入力した日付が平成18年4月20日とすると、
レポート1.に表示させたい日付は平成18年7月19日です。
ご存知の方、教えて下さい。
・ツリー全体表示

【8448】Re:テキスト
発言    - 06/8/10(木) 16:14 -

引用なし
パスワード
   こんにちわ。雅です。

>=Sum([前月借方残]) でも =DSum("前月借方残","試算表")で設定しても、#Errorとなってしまいます。他に方法があったら教えて下さい。

どういう状況かいまいち分かりません。
デバッグウィンドウで
?DSum("前月借方残","試算表")
とすると値が表示されますか?

とりあえず下記の内容を確認してください。

- ヘルプから抜粋 -

コントロールに #Error? または #Name? と表示される

次にコントロールに #Error? または #Name? と表示される原因を示します。原因を解決するには、次のいずれかの操作を行います。

・コントロールの "ControlSource/コントロール ソース" プロパティで指定したフィールドが、基になるテーブル、クエリー、または SQL ステートメントから削除されていないことを確認します。
・コントロールの "ControlSource/コントロール ソース" プロパティで指定したフィールド名のスペルを確認します。
・コントロールの "ControlSource/コントロール ソース" プロパティで式を指定した場合は、式の先頭に等号 (=) が指定されていることを確認します。
・式の中で、スペースが含まれているコントロールまたはフィールド名の参照の前後に、角かっこ ([ ])が指定されていることを確認します。たとえば、[締切日] フィールドから [出荷日] フィールドを減算するには、「=[締切日] - [出荷日]」と入力します。

・組み込み関数を使用している場合は、引数の数が正しいか、引数を指定する順序が正しいか、必要な区切り記号を記述し忘れていないかどうかを確認します。正しい構文を確認するには、使用している関数のヘルプ トピックを参照します。
・正しい構文を使用して、他のコントロールを参照しているかどうかを確認します。コントロールの参照の詳細については、 をクリックしてください。
・コントロールに対して循環参照を使用していないことを確認します。たとえば、コントロールの "Name/名前" プロパティに「MyControl」と入力し、コントロールの "ControlSource/コントロール ソース" プロパティに「=[A]+[B]+[MyControl]」と入力すると、この式は処理されません。

でわ。
・ツリー全体表示

【8447】Re:ORACLE への DAO接続
回答  たん  - 06/8/10(木) 9:20 -

引用なし
パスワード
   他には、単純に「タイムアウト」しただけとか。

# 接続条件や、ネットワーク負荷、受領データ量等により。
・ツリー全体表示

【8446】Re:ORACLE への DAO接続
回答  たん  - 06/8/10(木) 9:17 -

引用なし
パスワード
   >  Set objDB = OpenDatabase("", False, False, "ODBC;Driver={Microsoft ODBC for Oracle};DATABASE=***;UID=***;PWD=***")

の記述以前に、ODBCドライバ経由でリンクテーブルとしては接続出来るかどうかを
確認できているのでしょうか?

リンクテーブル接続がOKなら、リンクテーブルをデザインで開いて、リンクテーブルの
説明プロパティを参照すれば、接続文字列が確認できます。

リンクテーブル自体が接続できていないなら、Oracleクライアントの設定や、
ドライバ自体の問題の可能性が大きいかと。
・ツリー全体表示

【8445】テキスト
お礼  Fumio  - 06/8/9(水) 17:32 -

引用なし
パスワード
   雅さん、有難うございます。
=Sum([前月借方残]) でも =DSum("前月借方残","試算表")で設定しても、#Errorとなってしまいます。他に方法があったら教えて下さい。
・ツリー全体表示

【8444】ORACLE への DAO接続
質問  CAVE1  - 06/8/9(水) 14:10 -

引用なし
パスワード
   データーソースの設定をVBA上で行い、DAO で Oracle に接続(参照)する方法を教えてください。

今、以下のようなコードを作成しましたが「ODBC呼び出しが失敗しました」というメッセージが出ます。

Private Sub DAO_START_Click()
 
  Dim objDB As DAO.Database
  Dim objRec As DAO.Recordset
  Dim strSQL As String

  Set objDB = OpenDatabase("", False, False, "ODBC;Driver={Microsoft ODBC for Oracle};DATABASE=***;UID=***;PWD=***")
  
  strSQL = "select ID,NAME,BIRTH from DATA"

  Set objRec = objDB.OpenRecordset(strSQL, dbOpenDynaset)

  Do Until objRec.EOF
   Debug.Print objRec!ID, objRec!NAME, objRec!BIRTH
   objRec.MoveNext
  Loop
  

  objDB.Close
  Set objDB = Nothing 
  Set objRec = Nothing 

End Sub

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

【8443】Re:テキストボックスに合計を表示するには...
回答    - 06/8/9(水) 0:15 -

引用なし
パスワード
   こんばんわ。雅です。

>フォーム試算表を作り、フッターに3個のテキストボックスを作って、各テキストボックスに前月借方残合計、当月借方金額合計、借方合計金額合計を表示したいと思います。テキストボックスのプロパティのコントロールソースに =DSum([前月借方残],[試算表] と設定しましたが、#Name が表示されてしまいました。

=Sum([前月借方残])とするとどうでしょうか?
これで#Name?が表示される場合は、コントロール名に「前月借方残」として
いないか確認してください。

フィールド名を「前月借方残合計」などとする

DSumを使いたい場合は
=DSum("前月借方残", "試算表")
としましょう。

でわ。
・ツリー全体表示

【8442】テキストボックスに合計を表示するには?
質問  Fumio  - 06/8/8(火) 19:44 -

引用なし
パスワード
   テーブル名:試算表
フィールド名:前月借方残、当月借方金額、借方合計金額の3個のフィールドを作       りました。
フォーム試算表を作り、フッターに3個のテキストボックスを作って、各テキストボックスに前月借方残合計、当月借方金額合計、借方合計金額合計を表示したいと思います。テキストボックスのプロパティのコントロールソースに =DSum([前月借方残],[試算表] と設定しましたが、#Name が表示されてしまいました。
 どなたかテキストボックスに上記の設定が出来る方法を教えてください。
・ツリー全体表示

【8441】Re:フォームの値を表示させるようにレポー...
お礼  にしもり  - 06/8/8(火) 17:10 -

引用なし
パスワード
   ▼クロ さん:
うーん、なんでできるんですかね。
比べたところ同じなんですが。
よく調べてみます。
とりあえずありがとうございます。
大・大感謝でございます。
・ツリー全体表示

【8440】Re:フォームの値を表示させるようにレポー...
発言  にしもり  - 06/8/8(火) 17:06 -

引用なし
パスワード
   ▼クロ さん:
534_1zipピックアップ済みです。
・ツリー全体表示

【8439】Re:フォームの値を表示させるようにレポー...
発言  クロ  - 06/8/8(火) 16:59 -

引用なし
パスワード
   こっちでは出来てますよ。
http://www.accessclub.jp/fileup/ss1_board/index.html
ここをお借りしてアップしました。拾ってたら速攻削除しますので
教えてください。
・ツリー全体表示

【8438】Re:フォームの値を表示させるようにレポー...
発言  にしもり  - 06/8/8(火) 16:57 -

引用なし
パスワード
   ▼通りすがり? さん:

>ようは、レコードソースにクエリを使うか直接SQLを書くかの違い。
貴重なアドバイスありがとうございます。
勉強中ゆえ、大変参考になります。
盆休みに勉強しようと思っています。
・ツリー全体表示

【8437】Re:フォームの値を表示させるようにレポー...
回答  通りすがり?  - 06/8/8(火) 16:54 -

引用なし
パスワード
   >しました。クエリReportはこの際必要なかった、ということですね?

クエリのReportを使いたいなら

>レポートの開く時のイベントにサブフォーム(F_SUB_LIST_RESULT)の
>開く時のイベントに書いてあるコード
> Dim strCriteria As String
> Dim Today
><省略>
> Me.RecordSource = strCriteria
>をコピペしてください。

をやめて

サブフォーム(F_SUB_LIST_RESULT)の開く時のイベントに書いてあるコード
 Dim strCriteria As String
 Dim Today
<省略>
 Me.RecordSource = strCriteria
 Application.CurrentDb.QueryDefs("Report").SQL = strCriteria ←これを追加

レポートのレコードソースにある「Report」を消したのなら追加

あとは、レポートのコントロールソースにクエリの項目を選択してやればOK

ようは、レコードソースにクエリを使うか直接SQLを書くかの違い。
・ツリー全体表示

【8436】Re:フォームの値を表示させるようにレポー...
質問  にしもり  - 06/8/8(火) 16:53 -

引用なし
パスワード
   ▼クロ さん:

>レポートの各テキストのコントロールソースは変えましたか?
変えました。確認も済ませました。
ですが、まだできません。。
・ツリー全体表示

【8435】Re:フォームの値を表示させるようにレポー...
発言  クロ  - 06/8/8(火) 16:44 -

引用なし
パスワード
   ▼にしもり さん:
レポートの各テキストのコントロールソースは変えましたか?
・ツリー全体表示

【8434】Re:フォームの値を表示させるようにレポー...
質問  にしもり  - 06/8/8(火) 16:42 -

引用なし
パスワード
   ▼クロ さん:
>現在のレポートのレコードソースにある「Report」を空欄にしてください。
しました。クエリReportはこの際必要なかった、ということですね?

>をコピペしてください。
しました。がコマンド72を実行してもどの項目も#Name?となってしまいます。どうすればよろしいでしょうか?
・ツリー全体表示

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