
Accessのレポートで年次集計を項目が可変になるため、VBAで書き換えるようにしたのですが、うまく出来ません。
お心当たりのかたいらっしゃいましたら教えて頂けないでしょうか。
フォームの概要(売上集計)
OO年 OO年 OO年
商品A 1,000 2,000 3,000
商品B 1,500 2,500 3,500
商品C 2,500 3,500 4,500
※年は可変です
次のようにするとフォームが開いていないと言ったエラーが出ます。
stDocName = "年別売上集計レポート"
Reports(stDocName).ラベル1.Caption = cstr(Year) + "年"
DoCmd.OpenReport stDocName, acPreview, "", [フィルタ]
又次のようにするとエラーは出ませんが、ラベルは書き換わりません。
stDocName = "年別売上集計レポート"
DoCmd.OpenReport stDocName, acHidden, "", [フィルタ]
Reports(stDocName).ラベル1.Caption = cstr(Year) + "年"
DoCmd.OpenReport stDocName, acPreview, "", [フィルタ]
No.2ベストアンサー
- 回答日時:
今しがた思い返してみたのですが、
意図しているところを探ってみますと下のコードでもまずいと思います。
というのもOpenReport自体がレポートのロード命令であり、
acPreviewとacHiddenとは別のレポートだと思われるからです。
(同じレポートを連続で開こうとするとどうなるか分かりません)
Reports(stDocName).ラベル1.Caption = cstr(Year) + "年"
この一行をレポートのopen、ないしそれに該当するイベントに記述すれば
上記のことは回避できますし、
わざわざhiddenで開いてラベルをセットする必要もありません。
意図をはずしていたらご容赦を。
レポートのオープンイベントでセットしたら解決しました。
結果的にはレポートのオープンイベントでに次のようなコードを入れました。
Private Sub Report_Open(Cancel As Integer)
Me.ラベル1.Caption = Forms!呼び出し元フォーム.年ラベル.Caption + "年"
end sub
こんな方法があるとは教えて頂くまで気が付きませんでした。
助かりました。ありがとうございます。
No.1
- 回答日時:
>フォームが開いていないと言ったエラーが出ます
Form(レポート?)をロードしないとcaptionは変更というか
設定できないと思います。
コードとしては下のコードが正しいはずですが、
achiddenとは何でしょうか?
この引数は取れないようですが・・・
http://www.geocities.jp/cbc_vbnet/kisuhen/docmd. …
Accessの環境がないので参照意見扱いでお願いします。
この回答への補足
ご回答頂きありがとうございます。
仰るとおりopenしていないのメンバも変更出来ないようです。
acHiddenとは非表示でオープンする指定です。
URLも大変良い参考になりました。
下のコードをベースに改良してみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Accessのレポート上のテキストボックス値を設定したい
その他(データベース)
-
Access サブフォームでの選択行の取得
その他(データベース)
-
Accessでフォームから別フォームのテキストボックスの値を設定する
Visual Basic(VBA)
-
-
4
ACCESSでコントロールソースの変更
Access(アクセス)
-
5
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
6
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
7
Access2013 レポートを印刷するために開いた、レポートビューをVBAで閉じる方法を教えて。
その他(Microsoft Office)
-
8
AccessレポートのラベルをVBAでかきたい
Access(アクセス)
-
9
accessのレポートであとから他のテーブルのフィールドを追加する方法
Access(アクセス)
-
10
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
11
アクセスVBAで、フォームの値をレポートに代入したい
Access(アクセス)
-
12
Access レポート印刷するときに1ページに収める方法
Access(アクセス)
-
13
実行時エラー3131 FROM 句の構文エラーです について
Access(アクセス)
-
14
Accessのレポートで再読み込み
Access(アクセス)
-
15
ACCESS フォームをそのまま印刷について
その他(データベース)
-
16
レポートのコントロールソースを条件により変えたい
その他(データベース)
-
17
「#エラー」の回避
Access(アクセス)
-
18
AccessVBAでの可視・不可視の切り替え
PowerPoint(パワーポイント)
-
19
2つのテーブルに共通するレコードを削除したい
Access(アクセス)
-
20
Accessでテーブル名やクエリ名一覧の抜き出し
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
access2000で列数によって違う...
-
Accessのレポートで項目ラベル...
-
レポートのテキストボックスで...
-
レポート上で番号をつける方法は?
-
accessレポートにwordの文...
-
ACCESS:レポートが依存するオ...
-
テキストボックスにコントロー...
-
ACCESS2000のレポート
-
アクセスのレポートをPDF化する...
-
Access2007のレポートについて
-
レポートのラベルなどの非表示...
-
アクセスで、データの件数をだ...
-
Access複数のサブレポート
-
アクセスのレポートについて
-
アクセスのレポートで空白のテ...
-
BusinessObjectsについて教えて...
-
ACCESS2013 REPORTの高さを調節...
-
Access チェックボックスを使...
-
Access 複数列レポートにおいて...
-
ACCESS レポートでグループご...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アクセスのレポートのヘッダー...
-
Accessのレポート上のテキスト...
-
★お手上げ状態です。助けてくだ...
-
テキストボックスにコントロー...
-
Access チェックボックスを使...
-
Accessのフォーマット時イベント
-
エクセルで表を作り、ピボット...
-
Accessでレポートの項目をVBAで...
-
ACCESS2000 VBAで印刷時にサブ...
-
Access上で作成したレポートのE...
-
BusinessObjectsについて教えて...
-
accessレポートにwordの文...
-
アクセスのレポートで空白のテ...
-
計算結果がレポートビューでは...
-
アクセスでレポート作成時にデ...
-
Access レポートフッターを条...
-
ACCESSでデータゼロ件の時レポ...
-
レポートのラベルなどの非表示...
-
ACCESSのレポートフッターをグ...
-
ACCESS レポートでグループご...
おすすめ情報