Access VBA質問箱 IV

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

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


1 / 500 ページ 前へ→

【13151】Re:生産番号で行番号連番リセット、生産...
質問[NEW]  きむ E-MAIL  - 17/5/26(金) 10:37 -

引用なし
パスワード
   ▼hatena さん:
>▼きむ さん:
>>フィールド名間違ってました、すいません。
>>フォームテーブル:生産入力  サブフォームテーブル:生産入力_明細
>>    SSD_SSNO(生産番号):数値       SSM_GYONO(行番号):数値
>>    SSD_YMD(生産日):日付/時刻型     SSM_KOUTEINO(工程番号):数値
>
>で、結論は、正しいフィールド名に変更して、うまくいったのでしょうか。
下記の式に変更しましたが。
Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細", "Format(SSD_YMD,""yyyymm"")=" & Format([SSD_YMD], "yyyymm")) + 1, 1)
実行時エラー'2465':
指定した式で参照されている'|'フィールドが見つかりません。
が出ました。
すいません。今一度ご教授お願い致します。
・ツリー全体表示

【13150】Re:生産番号で行番号連番リセット、生産...
発言  hatena  - 17/5/25(木) 22:51 -

引用なし
パスワード
   ▼きむ さん:
>フィールド名間違ってました、すいません。
>フォームテーブル:生産入力  サブフォームテーブル:生産入力_明細
>    SSD_SSNO(生産番号):数値       SSM_GYONO(行番号):数値
>    SSD_YMD(生産日):日付/時刻型     SSM_KOUTEINO(工程番号):数値

で、結論は、正しいフィールド名に変更して、うまくいったのでしょうか。
・ツリー全体表示

【13149】Re:生産番号で行番号連番リセット、生産...
質問  きむ E-MAIL  - 17/5/25(木) 11:29 -

引用なし
パスワード
   ▼hatena さん:
>>実行時エラー'2465':
>>指定した式で参照されている'|'フィールドが見つかりません。
>
>フィールド名に間違いはありませんか。
>
>SSM_KOUTEINO
>生産日
返信遅くなって申し訳ありません。
フィールド名間違ってました、すいません。
フォームテーブル:生産入力  サブフォームテーブル:生産入力_明細
    SSD_SSNO(生産番号):数値       SSM_GYONO(行番号):数値
    SSD_YMD(生産日):日付/時刻型     SSM_KOUTEINO(工程番号):数値
・ツリー全体表示

【13148】Re:生産番号で行番号連番リセット、生産...
回答  hatena  - 17/5/23(火) 16:45 -

引用なし
パスワード
   >実行時エラー'2465':
>指定した式で参照されている'|'フィールドが見つかりません。

フィールド名に間違いはありませんか。

SSM_KOUTEINO
生産日
・ツリー全体表示

【13147】vbaのリンク読込に関して
質問  yobo  - 17/5/19(金) 16:07 -

引用なし
パスワード
   vba初心者です。
以下のソースでリンク先を読みに行ったときに応答がない時(タイムアウト)など
プログラムを終了させる処理を行いたいのですが、なかなかうまくできません
申し訳ないですがどのようにかいたらいいか教えてください。
__________________________________
Dim myArray As Variant
myArray = Array("dbo_ver")
 Set DB = CurrentDb()
 For i = LBound(myArray) To UBound(myArray)
  Set TD = DB.TableDefs(myArray(i))
   TD.Connect = "ODBC;Driver={SQL Server};***"                TD.Attributes = DAO.TableDefAttributeEnum.dbAttachSavePWD
   TD.RefreshLink
   Set TD = Nothing
      Next i
    Set DB = Nothing
・ツリー全体表示

【13146】Re:生産番号で行番号連番リセット、生産...
質問  きむ E-MAIL  - 17/5/17(水) 8:42 -

引用なし
パスワード
   ▼hatena さん:回答ありがとうございました。
>
>) が多かったようです。下記でどうでしょう。
>
>Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細", "Format(生産日,""yyyymm"")=" & Format([生産日],"yyyymm")) + 1, 1)

)を削除しましたが、
実行時エラー'2465':
指定した式で参照されている'|'フィールドが見つかりません。

とデバックしました。
・ツリー全体表示

【13145】Re:生産番号で行番号連番リセット、生産...
回答  hatena  - 17/5/16(火) 22:11 -

引用なし
パスワード
   >Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細", "Format(生産日,""yyyymm"")=" & Format([生産日],"yyyymm")) + 1), 1)
>に変更してみたのですが。
>コンパイルエラー;構文エラーが出ました。
>工程Noが入力出来ませんでした。

) が多かったようです。下記でどうでしょう。

Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細", "Format(生産日,""yyyymm"")=" & Format([生産日],"yyyymm")) + 1, 1)
・ツリー全体表示

【13144】生産番号で行番号連番リセット、生産日の...
質問  きむ E-MAIL  - 17/5/16(火) 19:39 -

引用なし
パスワード
   回答ありがとうございます。
出張していて連絡遅くなって申し訳ありません。
Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細") + 1, 1)

これを下記に変更でどうでしょう。

Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細", "Format(生産日,""yyyymm"")=" & Format([生産日],"yyyymm")) + 1), 1)
に変更してみたのですが。
コンパイルエラー;構文エラーが出ました。
工程Noが入力出来ませんでした。

再度のご教授お願い致します。
・ツリー全体表示

【13143】Re:生産番号で行番号連番リセット、生産...
回答  hatena  - 17/5/13(土) 11:21 -

引用なし
パスワード
   >生産月が変わったら工程番号連番をリセットすることが出来ていません。

Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細") + 1, 1)

これを下記に変更でどうでしょう。

Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細", "Format(生産日,""yyyymm"")=" & Format([生産日],"yyyymm")) + 1), 1)
・ツリー全体表示

【13142】生産番号で行番号連番リセット、生産日の...
質問  きむ E-MAIL  - 17/5/12(金) 15:26 -

引用なし
パスワード
   フォームテーブル:生産入力  サブフォームテーブル:生産入力_明細
    生産番号:数値          行番号:数値
    生産日:日付/時刻型       工程番号:数値
現状動作:生産番号が変われば行番号連番リセット  変更:生産月が変われば工程                            番号リセット
 生産日   生産番号   行番号   工程番号   工程番号(変更)
2017/4/28    1      1       1        1
2017/4/28    1      2       2        2
2017/4/28    1      3       3        3
2017/4/29    2      1       4        4
2017/4/29    2      2       5        5
2017/4/29    2      3       6        6
2017/5/01    3      1       7        1
2017/5/01    3      2       8        2
2017/5/01    3      3       9        3

現状VBA
Private Sub Form_BeforeInsert(Cancel As Integer)
  Dim Frm0 As Form
  Set Frm0 = Forms!HachInpt生産入力
  If Nz(Frm0!生産番号, 0) = 0 Then
    MsgBox "ヘッダー部を入力してください。", vbExclamation + vbOKOnly, "Input Error!"
    Cancel = True
    Frm0!生産日.SetFocus
    GoTo ExitTrap
  End If
  
  Me.行番号 = Nz(DMax("SSM_GYONO", "D_生産明細", "SSM_SSNO = " & Nz(Frm0!生産番号, 0)), 0) + 1
   Me.工程No = Nz(DMax("SSM_KOUTEINO", "D_生産明細") + 1, 1)
ExitTrap:
  Set Frm0 = Nothing
End Sub
色々チャレンジしましたが。
生産月が変わったら工程番号連番をリセットすることが出来ていません。
VBAの知識が乏しいので前に進みません。

どなたかご教授お願い致します。
・ツリー全体表示

【13141】Re:テキストボックス使い方のお尋ね
回答  亀マスター  - 17/4/25(火) 23:43 -

引用なし
パスワード
   フォーム上のテキストボックスなどに表示したいということでしょうか?
例示されたSub AB() がテキストボックスを配置したフォームに書かれたコードなら
  テキストボックス名.Value = ABCD
で表示されるはずです。

Sub AB() が他のフォームや標準モジュールに書かれたコードなら、
  Forms("フォーム名").テキストボックス名.Value = ABCD
で表示されるはずです。

テキストボックスの内容を指定するのが テキストボックス名.Value ですが、
テキストボックスではなくラベルであれば、ラベル名.Caption になります。
・ツリー全体表示

【13140】テキストボックス使い方のお尋ね
質問  よろしくお願いいたします  - 17/4/25(火) 18:05 -

引用なし
パスワード
   Accessの勉強中です。

以下のことを実現したくて、試してみましたが、結果がでなくて、
ご教授ください。

実現したいのは、Cドライブに保存されているファイルのタイムスタンプ情報を
フォームに表示されるようにしたいこと。

以下ののVBAを使って、Access上では、成功しています。
しかし、その結果をどうやって、フォームに表示させるかは、わからなくて、
困っています。
-------------------------------------------------------------
Sub AB()
ABCD = FileDateTime("C:\ツール\元データ.CSV")
Debug.Print ABCD
End Sub
-------------------------------------------------------------
・ツリー全体表示

【13139】Re:A4縦のレポートに折り目をつけたい
お礼  オスマン  - 17/4/10(月) 17:02 -

引用なし
パスワード
   ありがとうございます。

解決することができました。
・ツリー全体表示

【13138】Re:A4縦のレポートに折り目をつけたい
回答  hatena  - 17/4/7(金) 13:11 -

引用なし
パスワード
   >Access2003のレポートで
>A4の縦サイズの帳票があり3つ折りの折り目を表示したいと思います。
>具体的には長さ数ミリの直線を高さ99mmと198mmのところに表示したい。

レポートのページフォーマット時のイベントで
Lineメソッドで直線を描画すればいいでしょう。


Private Sub Report_Page()
  Dim lTop As Long
  Dim lWidth As Long
  
  lTop = CLng(99 - 15) * 56.7 '上余白15mmの場合
  lWidth = 210 * 56.7
  Me.Line (0, lTop)-(lWidth, lTop)
  
  lTop = lTop + 99 * 56.7
  Me.Line (0, lTop)-(lWidth, lTop)

End Sub
・ツリー全体表示

【13137】A4縦のレポートに折り目をつけたい
質問  オスマン  - 17/4/5(水) 11:34 -

引用なし
パスワード
   お世話になります。

Access2003のレポートで
A4の縦サイズの帳票があり3つ折りの折り目を表示したいと思います。
具体的には長さ数ミリの直線を高さ99mmと198mmのところに表示したい。

レポートの仕様はグループヘッダと詳細があり
グループごとに表示してます。

どのように行えばよいでしょうか?
よろしくお願いします。
・ツリー全体表示

【13136】Re:レコードロック違反をどうにかしたい
お礼  norimasa E-MAIL  - 17/3/5(日) 16:19 -

引用なし
パスワード
   自己解決しました。
ありがとうございました
・ツリー全体表示

【13135】レコードロック違反をどうにかしたい
質問  norimasa E-MAIL  - 17/3/5(日) 11:32 -

引用なし
パスワード
   皆様のお知恵をお借りしたいです。

DoCmd.RunSQL "UPDATE T_Ipt " & _
             "SET T_Ipt.請求月 = CStr(Year(T_Ipt![時刻])) & CStr(Format(Month(T_Ipt![時刻]),'00'))"

人様のプログラムですが、これを実行すると時々レコードロック違反ですべての
レコードの更新ができないことがあります(全レコードが違反で落とされます)。

この前後でADODBでレコードセットを開いたりはしていますが、このクエリを実行する
前は必ず閉じています。

この更新クエリを必ず成功させる方法がありましたらご教示いただきたいです。
よろしくお願いします
・ツリー全体表示

【13134】Access2016 VBA ボタンのイベントプロシ...
質問  shinyaYS E-MAIL  - 17/2/7(火) 13:01 -

引用なし
パスワード
   Access2016の環境でプログラムを実行を実行させているのですが、
ボタンに割り付けたクリックイベントのプロシージャが呼ばれないという現象が発生しています。

同じプログラムを他のPCで動作させると、そのイベントプロシージャが呼ばれるので、このPCのAccessの環境設定設定だと思うのですが、
分かりません。

どなたか、ご教授下さい。
・ツリー全体表示

【13133】価格値上がりの際マスターを触りたくない
質問  悩めるサリー  - 17/1/20(金) 17:03 -

引用なし
パスワード
   購入商品はすべて価格契約をしているのですが

今度値上することになりました

こういう場合新しくコードを振るのが通例だと思いますが、このコードは購入先でも管理しているコードのなので変更できません

例)
    商品コード 商品名    価格
旧価格 100001   いちごケーキ  @300
新価格 100001   いちごケーキ   @350

となります、価格を変更すると、今までの購入履歴の金額がすべて変わってしまうのでできません
商品コード以外にユニークなキーコードを持たせるべきだったのでしょうが、元々ありませんでした。

考えたこと:

今から通番ユニークキーを持たせる
通番の違う商品コード100001がふたつあることになります

で、商品購入(初回投入時)は新価格のリストからしか選べない様にする

という風に考えたのですが

もともと商品コードは主キーを設定していたため重複ありにしようとするとはずさなければなりません

主キーをはずそうとすると、エラーメッセージが出ます
主キーを変更できません。

このテーブルは、リレーションシップの主テーブルになっています。

主キーを変更または削除するには、リレーションシップウィンドウで関連するリレーションシップを削除する必要があります。

ここで、リレーションシップを削除することによっておこる不都合は何がありますでしょうか?

リレーションシップは

注文用の主テーブルとその中にあるサブテーブル(一対多でつながっている)

と一対多でリレーションされています

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

【13132】Re:全ページに折り目
回答  hatena  - 17/1/12(木) 15:07 -

引用なし
パスワード
   レポートでの話ですよね。

ページヘッダーの任意の位置に直線コントロールを配置すればどうでしょう。
・ツリー全体表示

1 / 500 ページ 前へ→
ページ:  ┃  記事番号:
972120
(SS)C-BOARD v3.8 is Free