Access VBA質問箱 IV

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

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


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

【7527】Re:AccessVBAで質問です
発言  小僧  - 06/3/16(木) 10:06 -

引用なし
パスワード
   ▼snow-hat さん:
おはようございます。

>下記のような処理を作りたいのですがわかりません・・。
>その際、VBAのソースを記述頂けますと助かります。


このページの上にある

>>本サイトの基本方針をまとめました。こちら をご一読ください。

をご覧になってください。


> ・丸投げ
>   「○○するにはどうすればいいか教えてください」といったような、
>   コードを最初から最後まで教えてもらうことを期待するような質問


とありますよね。

間違っていても、書きかけのコードでも構いませんので
自分でどこまでできて、何が解らないのかを明確にされた方が宜しいかと思われます。


>「テーブルA」から「テーブルB」へ移動させる処理
>「テーブルA」から該当のレコードが削除

2つの処理が必要になりますね。
・テーブルB に対する「追加クエリ」
・テーブルA に対する「削除クエリ」

クエリの実行は VBA から OpenQueryメソッド で行う事が可能です。
また、クエリを作らずに VBA に SQL文を記述し、
RunSQLメソッドで SQL を発行する事もできます。


また DAO や ADO を使ってレコードセットを取得する方法もあります。

やり方は様々ありますね。
・ツリー全体表示

【7526】AccessVBAで質問です
質問  snow-hat  - 06/3/16(木) 0:57 -

引用なし
パスワード
   こんばんわ。AccessVBA初心者です。
下記のような処理を作りたいのですがわかりません・・。
もしお分かりになる方がいらっしゃいましたらサポートをお願い致します。

「テーブルA」「テーブルB」があり、それぞれのテーブルに連結した「フォームA」「フォームB」(両方とも帳票フォーム)があります。

テーブルには幾つかのフィールドがあり、その中にチェックボックスに連結したフィールドがあります。

まず、「フォームA」を開き、任意のレコードのチェックボックスにチェックを入れ(複数選択あり)、あるコマンドボタンをクリックするとチェックの入ったレコードのみを「テーブルA」から「テーブルB」へ移動させる処理を作成したいのですがどうもうまく作れません。
「テーブルB」へ移動後は「テーブルA」から該当のレコードが削除されている必要があります。
また、テーブルBには随時データが蓄積されていく必要があります。

どなたかお分かりになる方がいらっしゃいましたらご教授願います。
その際、VBAのソースを記述頂けますと助かります。

どうぞ宜しくお願い致します。
・ツリー全体表示

【7525】Re:リスト入りフォームを閉じると値要求
お礼  Dis  - 06/3/16(木) 0:36 -

引用なし
パスワード
   ▼小僧 さん:
ご回答、感謝します

>会社名は数値型でなく、テキスト型ですよね?
はい。テキスト型です。

>>       "[会社名] = " & [Forms]![検索フォーム]![社名リスト] & ""
>        "[会社名] = '" & [Forms]![検索フォーム]![社名リスト] & "'"
>
>とするとどうなるでしょうか。
同じです。パラメーター入力を求められます。
といいますか、OpenFormの一行を削除してもCloseの一行があるかぎり、パラメーター入力を求められます。
closeでacSaveNoとか、DoCmd.Closeだけとかイロイロ試したのですが、ダメでした。
あと、ふと思いついて同じフォーム内にもう1つリストボックスを作って、更新後のイベントにCloseを記述してみたらパラメーターの要求はなく普通に閉じられましたが、これじゃ解決になってませんね(^-^;
まあ 今は何とか使えているので、これでもいいと思っています。
ありがとうございました。
・ツリー全体表示

【7524】Re:一旦アクセスに取り込んだ写真のエクス...
回答  Gin_II  - 06/3/15(水) 23:10 -

引用なし
パスワード
   > アクセスに取り込んだ写真を

写真といっても、形式がいろいろありますが、元の画像のファイル形式は?

"DWriteChunk 関数"
http://x7net.com/~access/AcResTipsWarehouse2.html#DWriteChunkFunction

こちらが参考になると思います。
・ツリー全体表示

【7523】Re:サブフォームの行
回答  Gin_II  - 06/3/15(水) 22:38 -

引用なし
パスワード
   >DAOで接続してテーブルにデータ登録しますが、サブフォームに入力した複数行を
>一行ずつINSERTしたいです。

サブフォームの元となっているテーブルは?
そちらを使えば大丈夫だと思いますけど。
・ツリー全体表示

【7522】Re:別のフォームから違うフォームを開く?
回答  Gin_II  - 06/3/15(水) 22:36 -

引用なし
パスワード
   >   DoCmd.OpenForm "F_発注登録画面"
>   [T_発注履歴]![発注コード] = _
>    [F_当日発注確認画面]![F_当日発注確認画面サブ]![発注コード]

OpenForm メソッドの構文は、

expression.OpenForm(FormName, View, FilterName, WhereCondition, DataMode, WindowMode, OpenArgs)

です。(Access2003のヘルプより引用)


DoCmd.OpenForm FormName:="F_発注登録画面" _
  , WhereCondition:="[発注コード] = " & [F_当日発注確認画面]![F_当日発注確認画面サブ].Form.[発注コード]

とかでは?(発注コードフィールドが、数値型の場合。)
・ツリー全体表示

【7521】Re:コンボボックスのリクエリについて
回答  Gin_II  - 06/3/15(水) 22:31 -

引用なし
パスワード
   >カレントレコードが変わるたびにリクエリを実行したいのですが
>FORM_LOADのタイミングではうまくいかなかったです。

Current イベント
を使ってください。
・ツリー全体表示

【7520】Re:レコードの検索
回答  Gin_II  - 06/3/15(水) 22:30 -

引用なし
パスワード
   >この状態で、さらに一致するレコードが無い場合は、自動的に先頭レコードに移動しますが、
>無い旨のアラートを表示させることは可能でしょうか?

Bookmark Property
http://www.microsoft.com/JAPAN/developer/library/vbaac10/acprobookmark.htm

NoMatch プロパティを使ってください。


> エラー発生時にも、

ヘルプで、On Error ステートメント を確認してください。
・ツリー全体表示

【7519】別のフォームから違うフォームを開く?
質問  ケン  - 06/3/15(水) 21:42 -

引用なし
パスワード
   現在の状態

メインフォーム:[F_当日発注確認画面]
 

サブフォーム:[F_当日発注確認画面サブ](データシート型)
 レコードソースはクエリー:[Q_当日発注確認画面]

クエリー:[Q_当日発注確認画面]は
次の3つのテーブルから構成されています。
 テーブル:[T_発注履歴]- 発注コード・注文日
 テーブル:[T_商品]- 商品コード・商品名
 テーブル:[T_社員]- 社員ID・社員名

[F_当日発注確認画面サブ]
商品コード・商品名・ 社員名・ 注文日 発注コード
 1    たわし  田中   7/12    1
 2    タオル  佐藤   8/17    2
 
のような感じで表示されています。

もうひとつ別のフォームがあり、
フォーム:[F_発注登録画面](単票フォーム)
 テキストボックス:発注コード
 テキストボックス:注文日
 コンボボックス:社員ID
 テキストボックス:商品コード
 テキストボックス:商品名
 テキストボックス:数量
 テキストボックス:備考
 

やりたいこと

[F_当日発注確認画面]に設置したサブフォーム:[F_当日発注確認画面サブ]
のレコードをダブルクリックすると[F_発注登録画面]が開く。
        ↓
ダブルクリックしたレコードと同じ発注コードが表示されている。

そこで内容の閲覧や変更をする。

こんな感じにしたいのですが。

[F_当日発注確認画面サブ]のテキストボックス:商品コードのプロパティに

Private Sub 商品コード_DblClick(Cancel As Integer)
  DoCmd.OpenForm "F_発注登録画面"
  [T_発注履歴]![発注コード] = _
   [F_当日発注確認画面]![F_当日発注確認画面サブ]![発注コード]
End Sub

と入力したのですが、

実行時エラー:3008
テーブルT_商品は他のユーザーが排他的に開いているか、既にユーザーインター
フェースを介して開いているので、プログラムによって操作することはでき
ません。

とエラーが出てしまいます。

どなたかご指導頂けますでしょうか。

 
  
・ツリー全体表示

【7518】コンボボックスのリクエリについて
質問  木蓮  - 06/3/15(水) 18:18 -

引用なし
パスワード
   よろしくお願いします。

コンボボックスの絞込みをしており
1つめのコンボボックスを選択すると
2つめのコンボボックスはある程度絞り込まれて表示させています。

すでに登録してあるレコードを表示させると
2つめのコンボボックスのリクエリが実行されていないので
空白になってしまいます。

カレントレコードが変わるたびにリクエリを実行したいのですが
FORM_LOADのタイミングではうまくいかなかったです。
どうすればよいか教えてください。
・ツリー全体表示

【7517】レコードの検索
質問  とことこ  - 06/3/15(水) 17:44 -

引用なし
パスワード
   検索ボタンを押すと、検索条件とNoフィールドが一致するレコードに移動するようにしています。
空欄の場合は、「検索するNo.を入力して下さい。」と表示するように設定しています。

この状態で、さらに一致するレコードが無い場合は、自動的に先頭レコードに移動しますが、
無い旨のアラートを表示させることは可能でしょうか?

またエラー発生時にも、エラー発生の旨のアラートを表示させたいと考えていますが、こちらも可能でしょうか?

試行錯誤してもなかなか上手く動かず、お知恵をお貸し頂ければと思います。
現在完成しているコードは、以下になります。
宜しくお願い致します。

Private Sub 検索ボタン_Click()
  Dim rs As Object
  If IsNull(Me!抽出条件) = True Then
  MsgBox "検索するNo.を入力して下さい。", vbOKOnly + vbInformation
  Me!抽出条件.SetFocus
  Exit Sub
  End If
  Set rs = Me.Recordset.Clone
  rs.FindFirst "[No] = " & Str(Me![検索条件])
  Me.Bookmark = rs.Bookmark
End Sub
・ツリー全体表示

【7516】サブフォームの行
質問  tttn  - 06/3/15(水) 17:33 -

引用なし
パスワード
   始めましてアクセスで困っています。教えて頂きたいです。

DAOで接続してテーブルにデータ登録しますが、サブフォームに入力した複数行を一行ずつINSERTしたいです。

そのためにループで回したいですがSubFormにある行をVBAで呼び方(設定しかた、書き方)を良く分かりません。また、SubFormに全行数をしりたいですがどうすればいいでしょうか?

例えば:Me!SubForm.rows

今とまっていますので方法を回答をお願い致します。
・ツリー全体表示

【7515】一旦アクセスに取り込んだ写真のエクスポ...
質問  o  - 06/3/15(水) 11:00 -

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

一旦、アクセスに取り込んだ写真をファイルとして

保存したいのですが、可能でしょうか?

できればファイル名も指定しながらエクスポート(?)したいのですが。

環境
access2002
sqlserver2000
・ツリー全体表示

【7514】Re:分類されているコード毎にEXCELの別シ...
お礼  とも  - 06/3/14(火) 23:16 -

引用なし
パスワード
   小僧 さん回答ありがとうございます。
早速VBAでコードを書いてみます。
>[#5671] クエリで作成したデータをエクセルへ吐き出す
また解らないところあれば質問させてください。
よろしくお願いします。
・ツリー全体表示

【7513】Webページでの閲覧について
質問  初心者  - 06/3/14(火) 22:46 -

引用なし
パスワード
   はじめまして。
社内のイントラでACCESSのデータを閲覧したいのですが可能でしょうか?
57万件程のデータでクエリでメーカーごとの売上高の合計などをクエリで作成して
ドルグボタンで抽出出来るフォームをWeb上で行うイメージなのですが、自分で調べたのですが、閲覧だけなら出来そうな気がします。よい参考Webページなどご存知でしたら教えてください。
・ツリー全体表示

【7512】Re:クエリの重複情報をクエリに出力したい
質問  Hg-0310  - 06/3/14(火) 21:39 -

引用なし
パスワード
   Gin_IIさん
 返事遅くなりました、すいません。
 VBAを使って、重複の結果をクエリAに出力したいです。
・ツリー全体表示

【7511】Re:コンボボックスのアイテムを選択する方...
発言  小僧  - 06/3/14(火) 16:43 -

引用なし
パスワード
   ▼teti さん:
こんにちは。

既に解決されている模様ですが、

Private Sub Form_Load()
  Me.Combo1.Value = Me.Combo1.ItemData(0)
End Sub

なんて方法もありかと思います。
・ツリー全体表示

【7510】Re:コンボボックスのアイテムを選択する方...
回答  teti  - 06/3/14(火) 16:37 -

引用なし
パスワード
   ▼teti さん:
自己解決できました。

DefaultValueというプロパティを無理やり使いました。

お騒がせしました┌|∵|┘

>お世話になります。
>
>フォームを開いた時に、コンボボックスのアイテムの一つを選択された状態にする方法について教えて下さい。
>
>VBでは、下記のListIndexのような動きをするプロパティです。
>Private Sub Form_Load()
>  Combo1.AddItem ("テスト1")
>  Combo1.AddItem ("テスト2")
>  Combo1.AddItem ("テスト3")
>  Combo1.ListIndex = 1
>End Sub
>
>コンボボックスのアイテムはプロパティのデータの値集合ソースに
>SELECT文を書いて取得しています。
>
>ご存知のかた、宜しければ教えてください
>どうそ、よろしくお願いいたします(>_<)
・ツリー全体表示

【7509】コンボボックスのアイテムを選択する方法
質問  teti  - 06/3/14(火) 16:01 -

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

フォームを開いた時に、コンボボックスのアイテムの一つを選択された状態にする方法について教えて下さい。

VBでは、下記のListIndexのような動きをするプロパティです。
Private Sub Form_Load()
  Combo1.AddItem ("テスト1")
  Combo1.AddItem ("テスト2")
  Combo1.AddItem ("テスト3")
  Combo1.ListIndex = 1
End Sub

コンボボックスのアイテムはプロパティのデータの値集合ソースに
SELECT文を書いて取得しています。

ご存知のかた、宜しければ教えてください
どうそ、よろしくお願いいたします(>_<)
・ツリー全体表示

【7508】Re:リスト入りフォームを閉じると値要求
回答  小僧  - 06/3/14(火) 11:54 -

引用なし
パスワード
   ▼Dis さん:
こんにちは。

>Sendkeys "{ENTER}"でパラメーターに[OK]を入力したり

Sendkeys はタイミングによって発行されなかったりするので
安定性に掛けてしまいますね。


>DoCmd.OpenForm "会社名一覧", , , _
>        "[会社名] = " & [Forms]![検索フォーム]![社名リスト] & ""
>'Msgbox [Forms]![検索フォーム]![ふりがなリスト]
>DoCmd.Close acForm,"検索フォーム",acSaveNo

上記のコードを使用してみた所、当方の環境でも再現されました。
会社名は数値型でなく、テキスト型ですよね?

>       "[会社名] = " & [Forms]![検索フォーム]![社名リスト] & ""
       "[会社名] = '" & [Forms]![検索フォーム]![社名リスト] & "'"

とするとどうなるでしょうか。
・ツリー全体表示

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