Access VBA質問箱 IV

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

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


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

【6880】Re:クエリ内容をEXCEL形式でOutlook以外の...
お礼  くま  - 05/11/30(水) 14:54 -

引用なし
パスワード
   藤倉さま
早々に返信をありがとうございました。
単純に通常使うソフトをデフォルト設定できるのかと想像していました。

参考にさせていただいて頑張ってみます。
ありがとうございました。


▼藤倉 さん:
>参考
>http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_800_080.html
・ツリー全体表示

【6879】Re:クエリ内容をEXCEL形式でOutlook以外の...
発言  藤倉  - 05/11/30(水) 14:36 -

引用なし
パスワード
   参考
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_800_080.html
・ツリー全体表示

【6878】Re:2年分の検索方法は?
質問  わん  - 05/11/30(水) 14:26 -

引用なし
パスワード
   小僧さんお久しぶりです。
今回も宜しくお願いします。

早速のご返答ありがとうございます。
両方とものやり方はわかりました。

ですが、私の説明不足のために問題が発生しました。
実は、現在はフォーム(単票フォーム)の結果1、結果2の各テキストは、
名前及び年月日による縦累計をコントロールソース内にて計算させています。
(クエリによる縦累計の方法がわからなかったため)

そこで、テーブルIの結果1・結果2の縦累計のクエリを作成し、
累計結果を単票フォームでコンボ検索により、
年別(月別)に指定年・指定年前年の累計結果のみを
表示させるようにしたいと思います。

ですので、
クエリによる結果1・結果2の縦累計のSQLを教えていただきたいと思います。
宜しくお願い致します。
・ツリー全体表示

【6877】Re:2年分の検索方法は?
回答  小僧  - 05/11/30(水) 13:44 -

引用なし
パスワード
   ▼わん さん:
お久し振りです。

>フォームのコンボ検索で2年分のデータを
>表示させるにはどうしたらよいのでしょうか?

仕組みは同じですが、2通りの方法を考えてみました。

1) クエリによる操作

SELECT Year([日付]) AS 年,
テーブルI.名前,
テーブルI.結果1,
テーブルI.結果2,
DLookUp("結果1","テーブルI","Year([日付]) = " &
Year([日付])-1 & "AND 名前 = '" & [名前] & "'") AS 前年結果1,
DLookUp("結果2","テーブルI","Year([日付]) = " &
Year([日付])-1 & "AND 名前 = '" & [名前] & "'") AS 前年結果2
FROM テーブルI;

こちらのクエリを基にフォームを作る。


2) フォームによる操作

txt結果1前年 の「コントロールソース」を

=DLookUp("結果1","テーブルI","Year([日付]) = " &
Year([日付])-1 & "AND 名前 = '" & [名前] & "'")

のようにする。(1行で記述して下さい。)


ご提示のデータのように抜けてしまっている年があると空白で表示されます。
・ツリー全体表示

【6876】クエリ内容をEXCEL形式でOutlook以外のソ...
質問  くま  - 05/11/30(水) 13:01 -

引用なし
パスワード
   いつもお世話になっております。

テーブルの内容を集計したクエリーを
メールでEXCEL添付として出力をしたく、下記のように記述しました。

  DoCmd.SendObject acSendQuery, "Q_Export_Sum", acFormatXLS, _
                  "adress@xxxx.co.jp", , , _
                  "test", "今週の集計分です。", True

ですが、メール送信ソフトにOutLookが起動されてしまいます。
別のソフトを使用しているので通常使っているもので送信したいのです。

どこかに設定があるのかと探しましたが見つからず
こちらに投稿させていただきました。

ご存知の方がいらっしゃいましたら教えていただけないでしょうか。
宜しくお願い致します。
・ツリー全体表示

【6875】2年分の検索方法は?
質問  わん  - 05/11/30(水) 12:41 -

引用なし
パスワード
   いつもお世話になってます。
久しぶりの質問です。
フォームのコンボ検索で2年分のデータを
表示させるにはどうしたらよいのでしょうか?

Access2000、OS:XP


 テーブルI
  ID   オートナンバー
  日付  日付型
  名前  テキスト
  結果1 数値型
  結果2 数値型

 テーブルI データ
  ID     日付      名前   結果1  結果2
   1   2000年1月1日   A    130000  235
   2   2000年2月1日   B    180000  285
   3   2001年1月1日   A    200000  300
   4   2001年2月1日   B    100000  185
   5   2002年1月1日   C    170000  275
   6   2002年2月1日   C    250000  335
   7   2003年1月1日   A    100000  185
   8   2004年1月1日   B    150000  260
   9   2004年2月1日   C    190000  290
   ・      ・      ・      ・    ・
   ・      ・      ・      ・    ・
   ・      ・      ・      ・    ・
   ・      ・      ・      ・    ・

 フォーム
  comb年
  txt年
  txt名前
  txt結果1
  txt結果2

comb年で指定した年の結果を各テキストに表示させることはできるのですが、
以下のようにcomb年で指定した前年の結果も表示させたいと考えています。

  現在   →  修正後     
  comb年     comb年
  txt年      txt年
  txt名前     txt名前 
  txt結果1    txt結果1
  txt結果2    txt結果2
           txt結果1前年←追加
           txt結果2前年←追加

どのようにしたら良いでしょうか?
どなたか教えて下さい。
宜しくお願い致します。
・ツリー全体表示

【6874】Re:エクセルファイルのインポート方法
回答  Gin_II  - 05/11/29(火) 16:59 -

引用なし
パスワード
   >エクセルファイルのインポートをVBAで組もうとしています。
>エクセルファイルを読込むと1行目がレコード名になってしまいます。

TransferSpreadsheet メソッドでは、テキストファイルのインポートのように、
インポート定義ファイルを使うことができないので、ムリだと思います。

エクセルファイルの方を変更するか、リンクテーブルとしてやって、それを元に
追加クエリでテーブルに取り込んでやれば大丈夫だと思います。
・ツリー全体表示

【6873】エクセルファイルのインポート方法
質問  BB@VBA初心者  - 05/11/29(火) 16:38 -

引用なし
パスワード
   はじめまして。
BB@VBA初心者です。

エクセルファイルのインポートをVBAで組もうとしています。
エクセルファイルを読込むと1行目がレコード名になってしまいます。

読込む際にレコード名を設定する方法を教えてください。

Private Sub コマンド0_Click()

DoCmd.TransferSpreadsheet acImport, 8, "test", "filename.xls", True

End Sub
・ツリー全体表示

【6872】Re:インポートの際テーブルを上書きするに...
お礼  にしもり  - 05/11/29(火) 8:16 -

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

>こちらでも可能だと思うのですが、テーブルの作成・削除を繰り返すと
>あまり MDB によくないと思いますのでレコードの全削除の方が良いかもしれません。
>
>DoCmd.RunSQL "DELETE FROM 予定"


いつも本当にありがとうございます。
アドバイスにしたがい、テーブルはそのままでレコードを削除する方法で試してみたいと思います。
・ツリー全体表示

【6871】Re:インポートの際テーブルを上書きするに...
回答  小僧  - 05/11/28(月) 17:25 -

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

>テーブルを上書きする

言葉そのまま、上書きでよろしいのでしたら、
インポート前のテーブルを削除してあげれば良いと思います。

DoCmd.DeleteObject acTable, "予定"

こちらでも可能だと思うのですが、テーブルの作成・削除を繰り返すと
あまり MDB によくないと思いますのでレコードの全削除の方が良いかもしれません。

DoCmd.RunSQL "DELETE FROM 予定"


差分だけ取り込みたい(重複があった場合だけ上書きしたい)
という事でしたら、もうちょっと複雑になりますね。
・ツリー全体表示

【6870】インポートの際テーブルを上書きするには
質問  にしもり  - 05/11/28(月) 15:36 -

引用なし
パスワード
   こんにちは。
教えてください。
下記モジュールを複数回実行すると、予定というテーブルに追加されてしまいます。
インポートの都度、予定というテーブルを上書きするのはどのように書けばよろしいでしょうか?
なお、つぎはぎで作りましたので余計なテキストがあるかもしれません。

Function test()

On Error GoTo test_Err
  DoCmd.SetWarnings False
  DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel97, "予定", "C:\支店\本日休暇.xls", True
  DoCmd.SetWarnings True

test_Exit:
  Exit Function

test_Err:
  MsgBox Error$
  Resume test_Exit
  
End Function
・ツリー全体表示

【6869】Re:重複データ非表示プロパティ
お礼  中直 E-MAIL  - 05/11/26(土) 15:01 -

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

すみません、全然勉強不足で恥かしいです。

今後もよろしくお願い致します。


▼たん さん:
>>レポートの印刷で直前のデータと同じ値であれば空白に
>>置き換える方法が分かりません。
>>
>>具体的に言うと得意先番号と得意先名称を最初の行に
>>だけ印刷したいのですが。
>
>詳細内においてあるテキストボックスの、重複データ非表示プロパティを
>確認して下さい。
・ツリー全体表示

【6868】Re:難しいと思うんですが・・・
お礼  超初心者きよ  - 05/11/25(金) 16:46 -

引用なし
パスワード
   Gin_II さん。。。

ありがとうございます。。。変な質問ですみませんでした。。
もう少しSQLも勉強します。。。

▼Gin_II さん:
>>すみません。。。更新クエリの場合は、条件(WHERE)を不可することで
>>よろしいんでしょうか?
>
>でできませんか?
>SQL文ではなくとも、GUIで作成できると思いますが・・
・ツリー全体表示

【6867】Re:難しいと思うんですが・・・
回答  Gin_II  - 05/11/25(金) 16:45 -

引用なし
パスワード
   >すみません。。。更新クエリの場合は、条件(WHERE)を不可することで
>よろしいんでしょうか?

でできませんか?
SQL文ではなくとも、GUIで作成できると思いますが・・
・ツリー全体表示

【6866】Re:難しいと思うんですが・・・
発言  超初心者きよ  - 05/11/25(金) 16:28 -

引用なし
パスワード
   ▼超初心者きよ さん:
>Gin_IIさんありがとうございます。
>
>▼Gin_II さん:
>>>1つのデータベースに対して条件Aと条件B(AND条件)のデータを
>>>変更するプログラムを作成しようとしておりますが・・・
>>>その際に適している検索方法(IF文しかないと思っていますが・・)
>>>を教えてほしいのです。
>>
>>更新クエリじゃ、ダメなんでしょうか?
>
>すみません。。。更新クエリの場合は、条件(WHERE)を不可することで
>よろしいんでしょうか?
>(SQL関連も離れていて・・・現在、再勉強中です。。。)

すみません・・・不可(←"付加"の間違いです。)
・ツリー全体表示

【6865】Re:難しいと思うんですが・・・
質問  超初心者きよ  - 05/11/25(金) 16:26 -

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

▼Gin_II さん:
>>1つのデータベースに対して条件Aと条件B(AND条件)のデータを
>>変更するプログラムを作成しようとしておりますが・・・
>>その際に適している検索方法(IF文しかないと思っていますが・・)
>>を教えてほしいのです。
>
>更新クエリじゃ、ダメなんでしょうか?

すみません。。。更新クエリの場合は、条件(WHERE)を不可することで
よろしいんでしょうか?
(SQL関連も離れていて・・・現在、再勉強中です。。。)
・ツリー全体表示

【6864】Re:難しいと思うんですが・・・
回答  Gin_II  - 05/11/25(金) 15:39 -

引用なし
パスワード
   >1つのデータベースに対して条件Aと条件B(AND条件)のデータを
>変更するプログラムを作成しようとしておりますが・・・
>その際に適している検索方法(IF文しかないと思っていますが・・)
>を教えてほしいのです。

更新クエリじゃ、ダメなんでしょうか?
・ツリー全体表示

【6863】難しいと思うんですが・・・
質問  超初心者きよ  - 05/11/25(金) 15:23 -

引用なし
パスワード
   初めてAccessを使っています。
(ExcelやVB(DBサーバー連携)は過去に経験あり)

基本的なことかも知れませんが。。。。

1つのデータベースに対して条件Aと条件B(AND条件)のデータを
変更するプログラムを作成しようとしておりますが・・・
その際に適している検索方法(IF文しかないと思っていますが・・)
を教えてほしいのです。
特に意識しているのは、実行速度です。
現在、18万件〜20万件のデータですが・・・・
今後のデータ量としては増えていく傾向にあります。
・・・もしかしたらここではないかもしれませんが、よろしくお願いいたします。
・ツリー全体表示

【6862】Re:過去ログ
お礼  マグロ  - 05/11/24(木) 22:59 -

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

【6861】Re:実行時エラー3061
発言  小僧  - 05/11/24(木) 16:56 -

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

既に解決済みのようですが、

>クエリで抽出したデータを、エクセルのシートに貼り付ける

のでしたら、わざわざクエリを作らなくても
Excel 側の CopyFromRecordset メソッドでいけそうですね。

こちらの掲示板でも何回か回答させて頂いていますので、
興味がおありでしたら過去ログを参照されてみて下さい。
・ツリー全体表示

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