Access VBA質問箱 IV

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

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


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

【5620】Re:封筒の宛名に連続番号打ち出しがしたい...
回答  ゆうこたん  - 05/7/15(金) 15:18 -

引用なし
パスワード
   >accessで封筒の宛名印刷ができるのかどうか、

プリンタが対応していればできます。
私はインクジェットプリンタで宛名印刷したことがあります。

>印刷段階で自動で数字を繰り上げてくれるのかどうかがわかりません。

ワークテーブル(一時的にデータを入れておくためのテーブル)を
作りましょう。
フォームで枚数を入れてOKボタンを押したら、ワークテーブルにデータが
あってもなくても削除するようにしましょう。
削除した後、ワークテーブルに指定した件数のデータが入るようにしましょう。
(20枚としたら製品の名前が20回入るというのがいいかもしれません)

そのワークテーブルを元にしたレポートを作ります。
テキストボックスをつくり、プロパティを開きます。
[データ]タブの[コントロールソース]に「=1」と入れます。
同じタブの下のほうにある[集計実行]を「全体」にします。
[書式]タブの[書式]に「000000000」と入れます。

このようにすると連番が表示されますよ〜。

頑張ってくださいねー。
・ツリー全体表示

【5619】封筒の宛名に連続番号打ち出しがしたいです
質問  mako  - 05/7/15(金) 13:44 -

引用なし
パスワード
   こんにちは。いつもありがとうございます。
毎度ながらですが、初歩的すぎる質問をお許し下さい。
今回は、下記のようなことがaccessで出来るのかどうかが
どうしてもわからず、最初のデータベースの設計(?)が
できないでいます。

私の会社で製作している製品には
各1台ごとに検査合格証を添付しなければなりません。
製品には1台づつに“000001”から順番に個別の製造番号が
振り分けられており、その番号を記した長形3号の封筒に入れて
検査合格証を添付して出荷します。

1.封筒の宛名には、
 1行目:製品の名前(20機種の中から検索しようと思っています)
 2行目:製造番号(1台1番号(連続番号)です)
 3行目:“合格証在中”(全製品この言葉なのでラベルにしようと思っています)
 の3行を印刷したいです。

2.手順としては
 1)製品の名前を検索して、表示します。
 2)その日出荷分の先頭の製造番号を入力し、○○枚と指定します。
 そうしたら、自動で製造番号を順番に繰り上げていき、
 必要枚数分を勝手に印刷できるようにしたいです。

accessで封筒の宛名印刷ができるのかどうか、
印刷段階で自動で数字を繰り上げてくれるのかどうかがわかりません。
図々しいお願いですが、もしできるとしたらその方法も
教えていただきたいと思っています。

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

【5618】Re:集計にて
回答  小僧  - 05/7/15(金) 10:13 -

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

「日」が月2回の固定であるならば、

SELECT Q.コード, Q.月, [前日] & "," & [後日] AS 日
FROM [
SELECT T_aaa.コード, Month(T_aaa.日) & "月" AS 月,
Min(Day(T_aaa.日)) AS 前日,
Max(Day(T_aaa.日)) AS 後日
FROM T_aaa
GROUP BY T_aaa.コード, Month(T_aaa.日) & "月"
]. AS Q
GROUP BY Q.コード, Q.月, [前日] & "," & [後日];

上記 SQL をSQLビューに貼り付けて試してみて下さい。

一応結果は出せますが、2つのフィールドの値を1つのフィールドに
「,」でつなげる事はデータベース上は余り好ましくないと思われます。
・ツリー全体表示

【5617】Re:応答なしの表示がでる。
回答  小僧  - 05/7/15(金) 9:54 -

引用なし
パスワード
   ▼さつき さん、てっちゃんさん:
おはようございます。

前回ログ:
>>>[#5385]縦方向のデータを横方向へ並べる

では「Filter」を使いましたが、今度は「Find」メソッドを使った例です。



>>'フィルタを掛けて新規か追加か判断
>>    'rs2.Filter = "契約者 ='" & rs1![契約者] & "'"
→    rs2.Find "契約者 ='" & rs1![契約者] & "'"



>>'更新
>>    rs2.Update
>>  End If
>>  rs1.MoveNext
→追加 rs2.MoveFirst
>> Loop

listyoko に追加する度に1レコード目まで戻り「Find」しています。
実行速度があがればいいのですが…。
・ツリー全体表示

【5616】Re:クエリーで入金の消しこみ
発言  てっちゃん  - 05/7/15(金) 9:51 -

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

前提条件として、
・[注文ID]は、重複しない
・[金額]のデータ型は、通貨または数値等になっている
事とします。

クエリーの新規作成で、[表示]-[SQLビュー]を表示します。
そこに、以下のSQL文をコピペしてみてください。

SELECT
  T売上6月.注文ID,
  T売上6月.金額 AS 売上金額,
  T売上6月.支店,
  T入金6月.金額 AS 入金金額,
  [T入金6月]![金額]-[T売上6月]![金額] AS [入金-売上]
FROM
  T売上6月 INNER JOIN T入金6月 ON
  T売上6月.注文ID = T入金6月.注文ID;

後は、これを[表示]-[データシートビュー]にて表示させると、
とりあえず、ご希望の(ご希望に近い)ものは出てくると思います。
これを「入金済クエリー」として保存してください。

「未入金クエリー」のSQLは次の通りです。
SELECT
  T売上6月.*
FROM
  T売上6月 LEFT JOIN T入金6月 ON
  T売上6月.注文ID = T入金6月.注文ID
WHERE
  T入金6月.注文ID Is Null;

テーブル名、フィールド名は、質問のものを使用して
いますので、違う場合は適宜変更してください。


私見ですが、書籍等を使って、それに載っている
例題等を一度模倣していく事をお勧めします。
その方が、比較的理解が進みやすいと思います。
・ツリー全体表示

【5615】集計にて
質問  まるこ  - 05/7/15(金) 8:58 -

引用なし
パスワード
   以下のようなテーブルで

ID    コード     名      日    
109    3401    カリナ    2005/10/07            
110    3401    カリナ    2005/10/21            
111    3401    カリナ    2005/11/04            
112    3401    カリナ    2005/11/18            
113    3401    カリナ    2005/12/02            
114    3401    カリナ    2005/12/16            
115    3401    カリナ    2006/01/06            
116    3401    カリナ    2006/01/20    
117    3401    カリナ    2006/02/03            
118    3401    カリナ    2006/02/17            
119    3401    カリナ    2006/03/03            
120    3401    カリナ    2006/03/17

上記のようなデーターを下記のようにするには
(1)
コード   日1   日2
3401  10月      7,21
3401  11月   4,18
3401  12月   2,16
3401   1月   6,20
3401   2月   3,17
3401   3月   3,17

もしくは
(2)

コード  10月  11月 12月 1月  2月 3月
3401    7,21 4,18 2,16    6,20 3,17 3,17
どうしたらできますでしょうか?
よろしくお願いします。
・ツリー全体表示

【5614】Re:応答なしの表示がでる。
発言  てっちゃん  - 05/7/15(金) 8:41 -

引用なし
パスワード
   ▼さつき さん:

私の経験上、「応答なし」でも動いているようです。
(本当に固まってることもあると思いますが)

以前は動いていたのであれば、辛抱強く(!?)待てば、結果は得られると
思います。

ただ、処理に時間が掛かり過ぎると実用的に無理が出てくると思うので、
以前の質問へのリンクや、現在の状況(データ件数や、テーブルの主キー等の
情報など)を再度書き込んでみてはいかがでしょう。

他人事で申し訳ありませんが、私には回答できる自身はありませんが、
他の先生方(!?)の回答が得られやすくなると思います。
・ツリー全体表示

【5613】応答なしの表示がでる。
質問  さつき  - 05/7/14(木) 15:31 -

引用なし
パスワード
   以前こちらで、filterをかけながら、データをテーブル1からテーブル2に追加するVBAを教えて頂いたのですが、件数が少ないうちは、きちんと動いていたのですが、件数が増えたら、固まるようになってしまいました。タスクマネージャを開くと、応答なしの表示が出ます。何かよい方法はないでしょうか?
どなたかお教え下さい。よろしくお願い致します。
・ツリー全体表示

【5612】クエリーで入金の消しこみ
質問    - 05/7/14(木) 12:56 -

引用なし
パスワード
   初心者です。教えてください。
テーブル-T売上6月
注文ID 金額 支店

テーブル-T入金6月
注文ID 金額 入金種類

と二つのテーブルをエクセルからインポートしました。
T売上6月とT入金6月を比較して、
入金済と未入金に分けて管理したいのですが、
どうすればよいのでしょうか?
入金済でも金額が違う場合、差額も表示したいです。

クエリを使って行えばいいようですが、どうやるのでしょうか?

すみませんが、HINTか考え方だけでも
教えていただけないでしょうか?
Access 2003です。
・ツリー全体表示

【5611】Re:VBA勉強中
回答  小僧  - 05/7/14(木) 10:00 -

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

フォームには連結フォームと非連結フォームがありますが、
例として連結フォームのやり方です。

まずフォームを用意(仮にF_Sakaiとします。)

テキストボックスを7個配置します。
名前      コントロールソース
txt納品日付   納品日付
txt商材コード  商材コード
txt商材名    商材名



「F_Sakai」を開くとレコードソースがないので
各フィールドが「#NAME?」になっていると思われますが、
ここに先ほどの SQL をセットしてあげる形です。

フォームはSAVEして閉じた状態で
下記コードをモジュールに貼り付けて確かめてみてください。

Sub SQLをフォームにセット()
Dim SQLCode As String

  DoCmd.OpenForm "F_Sakai"
  SQLCode = "SELECT [納品日付を入力してください] AS 納品日付, test_0513.商材コード, " _
      & "test_0513.商材名, test_0513.数量, test_0513.単価, " _
      & "test_0513.合計金額 , test_0513.備考欄 FROM test_0513"
   
  Forms![F_Sakai].RecordSource = SQLCode
   
End Sub

フォームに「SELECT」された値が入ったと思われますがいかがでしょうか?
・ツリー全体表示

【5610】Re:VBA勉強中
質問  sakaiII  - 05/7/14(木) 9:12 -

引用なし
パスワード
   ▼小僧 さん:
>▼sakaiII さん:

>一般的にAccessを使用してツール等を作成する場合
>結果の表示はフォームやレポートに出力しますので
>それであればDAOやADOで処理できますが、
いままでほとんどクエリでその結果を表示する方法でやっています。
抽出の結果をフォームに出力するほうほうはわかりません。
申し訳ありませんが、下の実行結果をフォームに出力する場合は、
どのように添削になるのでしょうか?
>
>クエリの様に表示させるとなると下記の様なコードで同じ事ができると思います。
>
>Sub クエリ作成()
>Dim SQLCode As String
>Dim QD As DAO.QueryDef
>  SQLCode = "SELECT [納品日付を入力してください] AS 納品日付, test_0513.商材コード, " _
>      & "test_0513.商材名, test_0513.数量, test_0513.単価, " _
>      & "test_0513.合計金額 , test_0513.備考欄 FROM test_0513"
>      
>  Set QD = CurrentDb.CreateQueryDef("Q_Test", SQLCode)
>  Set QD = Nothing
>  
>  DoCmd.OpenQuery "Q_test"
>End Sub
・ツリー全体表示

【5609】Re:Access2003は共有が不可になったの?
お礼  くま  - 05/7/13(水) 17:03 -

引用なし
パスワード
   小僧 さん
早々にありがとうございます。

こんなところに・・・
本当にありがとうございました。


>▼くま さん:
>こんにちは。
>
>当方Ac2002なので検証ができないのですが、
>
>http://office.microsoft.com/ja-jp/assistance/HP051882981041.aspx
>
>を見ると排他モードで開く仕様になっているように思われますよね。
・ツリー全体表示

【5608】Re:Access2003は共有が不可になったの?
発言  小僧  - 05/7/13(水) 16:37 -

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

当方Ac2002なので検証ができないのですが、

http://office.microsoft.com/ja-jp/assistance/HP051882981041.aspx

を見ると排他モードで開く仕様になっているように思われますよね。
・ツリー全体表示

【5607】Access2003は共有が不可になったの?
質問  くま  - 05/7/13(水) 16:28 -

引用なし
パスワード
   以前、Access2000のmdbでツールを作成していた時には
サーバーに1つ置き、複数ユーザが同時に使っていて壊れたのでldbチェックを追加していたのですが、
現在Access2003で新たに作り、サーバーに置き、複数ユーザーで開こうとしたら2番目の人はダブルクリックをしてもツールが無反応でメインのフォームも開きません。(もちろんまだチェックモジュールは入れていません)

前と変わった事は
サーバー、入っているOS、開発端末がAccess2003環境位で
Accessの設定も作り方も前と一緒です。
オプションも規定のファイル形式2000&共有&ロックしないで設定しています。

netでも理由が見つからず、こちらに質問を入れてみました。
どなたかご存知の方がいましたら教えて下さい。
・ツリー全体表示

【5606】Re:フォームについて
お礼  ゆかり  - 05/7/13(水) 14:03 -

引用なし
パスワード
   ありがとうございました!
解決しました。

書き方が足りなかったですね。
すいません・・・。
今度から気を付けます!!

本当にありがとうございました。
・ツリー全体表示

【5605】Re:フォームについて
発言  小僧  - 05/7/13(水) 13:46 -

引用なし
パスワード
   ▼ゆかり さん、Gin_II さん:
こんにちは。

ご提示された内容だけですと意味が掴みかねます。

フォームは「連結フォーム」なのか「非連結フォーム」なのか。

連結フォームであれば「単票フォーム」「帳票フォーム」なのか。

>「日付1」=「日付2」となったときは、
>「料金」のボックス内が、入力出来なくなり、
>ボックス内は、空白で網掛けがつくように、
>それ以外の場合は、料金が表示されるようにしたいです。

どういったタイミングでこの動作を組み込みたいのか。
   例:フォームを読み込んだ時
    「日付1」「日付2」の値が変わった時

詳しく書いて頂ければ回答がつきやすくなるかと思われます。


連結フォームでしたら Gin_II さんが紹介されている方法が有効です。

>>バージョンが不明ですが、Acc2000以降であれば、条件付書式が使えると思います。
>どのようにやればよいですか??

「料金」の(テキスト?)ボックスを右クリックすると[条件付き書式]という項目があります。

「式」「 [日付1]=[日付2] 」 と条件を入れて、一番右の [有効] アイコンをクリック

これでお望みのようになるかと思われます。
・ツリー全体表示

【5604】Re:フォームについて
質問  ゆかり  - 05/7/13(水) 13:05 -

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

どのようにやればよいですか??
・ツリー全体表示

【5603】Re:フォームについて
回答  Gin_II  - 05/7/13(水) 12:01 -

引用なし
パスワード
   >「日付1」=「日付2」となったときは、
>「料金」のボックス内が、入力出来なくなり、
>ボックス内は、空白で網掛けがつくように、
>それ以外の場合は、料金が表示されるようにしたいです。

バージョンが不明ですが、Acc2000以降であれば、条件付書式が使えると思います。
・ツリー全体表示

【5602】フォームについて
質問  ゆかり  - 05/7/13(水) 11:37 -

引用なし
パスワード
   こんにちは。
アクセスの質問があります。

「日付1」=「日付2」となったときは、
「料金」のボックス内が、入力出来なくなり、
ボックス内は、空白で網掛けがつくように、
それ以外の場合は、料金が表示されるようにしたいです。

是非、教えて下さい。よろしくお願いします。
・ツリー全体表示

【5601】Re:データのリンク元を変えたい
お礼  かじたに  - 05/7/12(火) 15:52 -

引用なし
パスワード
   ありがとうございました!
無事に移行できました m(_ _)m
・ツリー全体表示

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