Access VBA質問箱 IV

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

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


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

【7223】コンボボックスにデータが入力されてい...
質問   E-MAIL  - 06/2/3(金) 16:27 -

引用なし
パスワード
   フォーム上に40個のコンボboxがあります。
コンボボックスにデータが入力されている個数
を調べる方法はどうしたら良いのでしょうか?
コンボボックスの名前は、cbox1,cbox2,cbox3...cbox40となっています。
・ツリー全体表示

【7221】Re:サブフォームの行数
お礼  ジュン  - 06/2/3(金) 14:43 -

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

 ありがとうございました。上手く出来ました。
・ツリー全体表示

【7220】ワイルドカードを使った抽出条件
質問  pinkred  - 06/2/3(金) 13:24 -

引用なし
パスワード
   抽出がうまくいかずに困っています。

データ例
フィールド1 フィールド2  フィールド3
A      東京都     第3土曜(午後)
B       大阪府     第3日曜(夕方19時以降)
C       東京都     第3土曜(午後14時までに)
D       神奈川県    10日(午前中)
E       神奈川県    第2日曜(午前中)
F       広島県      第2土曜(18時以降)


第3土曜に該当するデータを抽出する為に、
Like "第3土曜*"としてクエリーを実行すると、
第3日曜のデータまで取ってきてしまいます。
Like "第3日曜*"とすると第3日曜のデータしか取ってこないのです。
何が違うのか分かりません。
何か良い方法はありませんか?
教えてください。
宜しくお願いいたします、
・ツリー全体表示

【7219】Re:サブフォームの行数
回答  クロ  - 06/2/3(金) 13:18 -

引用なし
パスワード
   こんにちは、クロです。


>問題1.:該当件数が5件の場合に5行分のデータとプラス最終行に空白の行が表示されます。
>    空白行を表示しない方法がわかりません。

単純にサブフォームのプロパティの「追加の許可」を「いいえ」でいいと思いますが
どうでしょうか?


>問題2.:5行分の入力が終わればメインフォームの印刷コマンドボタンにフォーカスを移動したいのですが、マウスを使わずに5行目の入力終了後にフォーカスの移動をしたいのでが、その方法がわかりません。

最後の入力コントロールのフォーカス喪失時で
カレントレコードとレコードセットのレコードカウントが一致していたら
メインフォームの特定コントロールに戻るではどうでしょうか?

If Me.CurrentRecord = Me.Recordset.RecordCount Then
  Me.Parent.戻りたいメインフォームのコントロール名.SetFocus
End If

みたいな感じて…
・ツリー全体表示

【7218】Re:テーブルの正規化で・・・。
質問  ken E-MAIL  - 06/2/3(金) 12:40 -

引用なし
パスワード
   返信ありがとうございます。
>仕事コード 仕事内容 受注日
>
>仕事コード 担当者
上記のようにテーブルは作成しているのですが、
入力フォームに、仕事コードと担当者(5個)を入力するテキストボックスを
作成しているのですが、テーブルに保存されるデータが、仕事コードと担当者
が複数の場合、最後の一人しか保存されません。(1つのレコードのみとなります。)
これを、
仕事コード 担当者
1234   あああ
1234   いいい
1234   ううう
この様に、保存するにはどうすれば良いのでしょうか?
・ツリー全体表示

【7217】Re:選択クエリをエクスポートした際の書式
お礼  Nina  - 06/2/3(金) 12:05 -

引用なし
パスワード
   小僧 さん、丁寧な解説をつけていただき、
ありがとうございました。

>どのような方法でエクスポートするのかが明記されておりませんが、
>マクロの テキスト変換 か VBA の TransferText メソッドを使われているのでしょうか。

VBAのTransferTextでエクスポートしようとしていました。

>質問される際に、Access と OS の バージョンを明記しましょうね。

大変申し訳ありませんでした。
いまさらですが。。。OSはWinXPでAccessは2003です。


>当方の WindowsXP の環境では、
>
>[コントロールパネル] → [地域と言語のオプション] →
>[地域オプション]タブにある [カスタマイズ] → [小数点以下の桁数]
>
>という項目によって変化します。

ここの設定に依存するんですね!!
初めて知りました。
確かに小数点以下は2桁になっていました。


>この項目に依存させない様にするには マクロのテキスト変換や
>TransferText メソッド以外でテキストファイルに出力する方法が必要です。

クエリを1項目つなげて1レコード分ずつ書き込みするのですね。
なるほど!
自分では全然思いつきませんでした。

この方法で実現します。
本当にどうもありがとうございました!!
大変助かりました。
・ツリー全体表示

【7216】Re:選択クエリをエクスポートした際の書式
回答  小僧  - 06/2/3(金) 11:20 -

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

>このクエリをテキストファイルにエクスポートする。

どのような方法でエクスポートするのかが明記されておりませんが、
マクロの テキスト変換 か VBA の TransferText メソッドを使われているのでしょうか。


>なぜこのようになってしまうかわかる方いらっしゃいますか?

質問される際に、Access と OS の バージョンを明記しましょうね。
当方の WindowsXP の環境では、

[コントロールパネル] → [地域と言語のオプション] →
[地域オプション]タブにある [カスタマイズ] → [小数点以下の桁数]

という項目によって変化します。

この項目に依存させない様にするには マクロのテキスト変換や
TransferText メソッド以外でテキストファイルに出力する方法が必要です。


Sub Openステートメントでエクスポート()
'※要参照設定 DAO x.x Object Library
Dim RS As DAO.Recordset
Dim i As Long
Dim WLine As String
Dim FNumber As Long
Dim FName As String

  Number = FreeFile
  FName = "C:\クエリ名.txt"

  Set RS = CurrentDb.OpenRecordset("クエリ名", dbOpenSnapshot)

  Open FName For Output As #FNumber
  
  Do Until RS.EOF
    For i = 0 To RS.Fields.Count - 1
      WLine = WLine & "," & RS(i)
    Next

    Print #FNumber, MID(WLine, 2)
    WLine = ""
    RS.MoveNext
  Loop
  
  Close #FNumber
  RS.Close
  Set RS = Nothing
End Sub
・ツリー全体表示

【7215】Re:サブフォームの行数
質問  ジュン  - 06/2/3(金) 10:48 -

引用なし
パスワード
   ▼ふくちゃん さん:
>たしか改ページをどうするかって、指定できましたよね。
>ヘッダーかフッダーのどちらかをプロパティで変更してみてください。
>改ページがそれにあたると思います

早速のご返事ありがとうございます。

ACCESSの初心者のため、フォームで改ページを指定する意味がわかりません。

質問の仕方が悪かったと思いますが、5行分の入力が終了したかどうかの判定をどのようにコード化するかが分かりません。(問題2)

もう1つ教えて頂きたいのは 各行ごとに出荷数量があり、変更入力したらその行の背景色を変えたいのです。

色々質問をして申しわけありませんがよろしくお願いします。
・ツリー全体表示

【7214】Re:選択クエリをエクスポートした際の書式
質問  Nina  - 06/2/3(金) 9:41 -

引用なし
パスワード
   Gin_II さん、ご回答ありがとうございます!


>クエリで、Format 関数を使ってやれば大丈夫だと思います。
>
>Format([フィールド名],"0")
>
>ただし、テキスト型として認識されるので、フィールド区切り記号を指定すると
>引用符がついてしまいますが ^^;


やってみたのですが、やはり同じ結果になってしまいました。。。
(クエリ実行した際は整数で表示されますが
 エクスポートしたテキストファイルには小数第2位まで出てしまいます。)


何か他の方法がありましたら、ご教授よろしくお願いいたします。
・ツリー全体表示

【7213】レポートの枚数について
質問  NEMONEMO  - 06/2/3(金) 8:49 -

引用なし
パスワード
   レポートに出力した枚数をテーブルに出力することはAccessで可能なのでしょうか?やり方があれば教えていただきたいのですが。
例)
テーブルA・・・店舗番号、氏名
店舗番号ごとに改ページして店舗番号で何枚出力しているのかカウントしたいです。
レポートにはPageを出力しています。
自分の考えはページに何行出力されるか把握し(A)店舗番号のデータ数をカウントし(B)
(B)/(A)であまりが出た場合+1するという考え方です。
ほかに方法がないか教えていただきたいです。
よろしくお願いします
・ツリー全体表示

【7212】Re:選択クエリをエクスポートした際の書式
回答  Gin_II  - 06/2/3(金) 0:46 -

引用なし
パスワード
   ><テキストファイルの内容>
>AAA    9.00
>BBB    4.00
>CCC    2.00
>
>このように勝手に小数点第2位までついてしまいます。
>整数のままテキストファイルにエクスポートしたいのですが。。。

クエリで、Format 関数を使ってやれば大丈夫だと思います。

Format([フィールド名],"0")

ただし、テキスト型として認識されるので、フィールド区切り記号を指定すると
引用符がついてしまいますが ^^;
・ツリー全体表示

【7211】Re:テーブルの正規化で・・・。
回答  Gin_II  - 06/2/2(木) 22:39 -

引用なし
パスワード
   >仕事コード、仕事内容、受注日、担当者
>
>とした場合、データを保存する時どのようにコードを書いたら良いのでしょうか?

仕事コード 仕事内容 受注日

仕事コード 担当者
のようにしては?


>また、コード以前にフォームに入力用のテキストボックスをどのように配置したら
>良いのかアドバイスを頂けたら嬉しいです。

上記のような構成であれば、サブフォームなんかを使って、担当者を入力するという
方法もあるかと。
・ツリー全体表示

【7210】Re:テーブルの正規化で・・・。
回答  わんわん  - 06/2/2(木) 22:28 -

引用なし
パスワード
   >仕事コード、仕事内容、受注日、担当者
>とした場合、データを保存する時どのようにコードを書いたら良いのでしょうか?
>また、コード以前にフォームに入力用のテキストボックスをどのように配置したら
>良いのかアドバイスを頂けたら嬉しいです。

んーーー冷たい事になりますが
配置なんていうのは自分でやらないとね。
板でどう話せるか???疑問

もうひとつテーブル作って担当者の一覧を保存しないと。
コードなんて必要なの?

もう少し進んでから出ないと、1から質問されてもって感じます。
・ツリー全体表示

【7209】Re:サブフォームの行数
回答  ふくちゃん  - 06/2/2(木) 22:20 -

引用なし
パスワード
   たしか改ページをどうするかって、指定できましたよね。
ヘッダーかフッダーのどちらかをプロパティで変更してみてください。
改ページがそれにあたると思います
・ツリー全体表示

【7208】テーブルの正規化で・・・。
質問  ken E-MAIL  - 06/2/2(木) 21:08 -

引用なし
パスワード
   テーブルの構成が

仕事コード、仕事内容、受注日、担当者1、担当者2、担当者3・・・・担当者20

となっていた場合、担当者が20人を超えた場合フィールド追加する必要
がありますよね。検索するのにも面倒だと感じています。そこで、

仕事コード、仕事内容、受注日、担当者

とした場合、データを保存する時どのようにコードを書いたら良いのでしょうか?
また、コード以前にフォームに入力用のテキストボックスをどのように配置したら
良いのかアドバイスを頂けたら嬉しいです。

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

【7207】選択クエリをエクスポートした際の書式
質問  Nina  - 06/2/2(木) 18:23 -

引用なし
パスワード
   初歩的なことかもしれませんが、理由と解決策がわからないので
質問させていただきます。よろしくお願いします。

選択クエリで、ソート・集計したものをテキストファイルに
エクスポートしています。


<テーブル> コードはテキスト型、数量は長数型で小数点以下表示0
コード 数量 
AAA   5
BBB   1
AAA   4
CCC   2
BBB   3
  


これを選択クエリで集計する(コード=グループ化・昇順、数量=合計)



<結果>
コード 数量の合計
AAA    9
BBB    4
CCC    2



このクエリをテキストファイルにエクスポートする。



<テキストファイルの内容>
AAA    9.00
BBB    4.00
CCC    2.00

このように勝手に小数点第2位までついてしまいます。
整数のままテキストファイルにエクスポートしたいのですが。。。
クエリの実行結果を表示した際には小数点はついていません。


クエリと同じレイアウトのテーブルを作ってそこに一旦出力してから
そのテーブルをエクスポートした際にはうまくいきました。
ですが、できればテーブルの追加はしたくないのです。
クエリのまま小数にならずに出力する方法はありませんか?
また、なぜこのようになってしまうかわかる方いらっしゃいますか?

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

【7206】サブフォームの行数
質問  ジュン  - 06/2/2(木) 11:11 -

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

今、サブフォームの入力行数のチェックで困っています。

メインフォームでデータの抽出条件を入力して、サブフォームに該当するデータを
件数分だけ表示しています。

問題1.:該当件数が5件の場合に5行分のデータとプラス最終行に空白の行が表示されます。
    空白行を表示しない方法がわかりません。
問題2.:5行分の入力が終わればメインフォームの印刷コマンドボタンにフォーカスを移動したいのですが、マウスを使わずに5行目の入力終了後にフォーカスの移動をしたいのでが、その方法がわかりません。

環境はwin98/XP access2000 です。

サブフォームのレコードソースはクエリを使わずにテーブルを使用しています。

ご存知の方、どうぞよろしくお教え下さい。
・ツリー全体表示

【7205】Re:集計について
お礼  初心者  - 06/2/1(水) 15:17 -

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

ありがとうございます。
お教えいただいた通りの操作で、無事できました。

Excel的な考えでやろうとして四苦八苦していました。。。
・ツリー全体表示

【7204】Re:コンボボックスを使用した抽出
お礼  mayu  - 06/2/1(水) 13:14 -

引用なし
パスワード
   無事作成することができました。
コピーで作成したときには思いついたことが
本番になって ボックスを作ることのみに集中し
基礎を忘れていました・・・(^^;
思い込みとは恐ろしい物ですね^^;

ありがとうございました m(_ _"m)ペコリ
・ツリー全体表示

【7203】Re:集計について
回答  小僧  - 06/2/1(水) 12:35 -

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

>クエリで種別の集計クエリを使うのは分かるのですが、

ご提示にあるような処理は選択クエリで行う事になります。

ツールバーから [挿入] → [クエリ] → [デザインビュー] を選択。

「テーブルの表示」画面で、該当のテーブルを選択し、[閉じる]

「商品」「種別」をダブルクリックして、
下半分画面のフィールドに「商品」「種別」の項目を追加。


ツールバーの [表示] → [集計] をクリック。
「商品」の列にある [グループ化] を [カウント] に変更。


データシートビューで結果を確認されてみてください。
・ツリー全体表示

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