Access VBA質問箱 IV

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

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


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

【9281】Re:フィルター使用時の明細行項目入力につ...
質問  きょん  - 07/4/12(木) 15:32 -

引用なし
パスワード
   >フィルターした情報は、親レコードのキー情報となり、
>非連結にしていた情報は、新規に挿入する子レコードの項目のイメージです。
>レコードソースにすると親テーブルと子テーブルのクエリーにする
>必要がありますが、これから挿入するデータで、
>存在しないデータなのでフィルターの時点で抽出されなくなります。


上記のように親レコードを抽出(フィルター)して、
子レコードを表形式でデータ入力する場合は、
予め、空のデータレコードを用意するしか方法は無いのでしょうか?
 
空レコードを作るのは、他の機能にも影響するので
あまり好ましくないのですが...
・ツリー全体表示

【9280】Re:正規化NGなので厳しい
お礼  さち  - 07/4/11(水) 21:25 -

引用なし
パスワード
   ▼たん さん:
ご指導有難うございました。ひとりで考えていて諦め切れなかったのですが、ACCESSでの加工は諦めました。


>テーブル1のデータの持たせ方の時点でNGです。
>Accessのようなデータベースというものは、
>Excelのように、同じデータを横に伸ばして保存する事は
>ありません。(正規化といいます)
>
>テーブル1
>No. 種別 数値
>111 AA  2
>111 BB  1
>...
>222 AA  3
>222 CC  1
>...
>333 AA  1
>
>テーブル2
>種別 月 数値
>AA  3  100
>AA  4  200
>...
>BB  3  200
>...
>
>テーブル2を以下の様に出したいなら、クロス集計クエリで
>>   3月 4月 5月 6月
>>AA  100 200 150 300
>>BB  200 150 120 200
>>CC  250 100 160 120
>
>テーブル1の種別単位の合計を出したいなら、集計クエリで、
>
>あとは、両方のクエリを種別で結合させ、フィールド内で計算させれば
>可能です。
>
>そこまで変えるのが困難なのであれば、Accessではなく、
>Excelで処理させた方が早いかもしれません。
・ツリー全体表示

【9279】Re:サブレポートの行数により、レポートを...
回答    - 07/4/11(水) 10:51 -

引用なし
パスワード
   こんにちわ。雅です。

>サブレポートの大きさ(10行)よりもレコード数が多かったら、
>レポートを改ページして、
>レポートの内容はそのまま(親テーブルの内容なので)で、
>サブレポートの内容だけを、
>次の行から表示させる方法はあるのでしょうか?

メインのほうでサブに表示されるべき件数をカウントしNextRecordプロパティを
操作します。

でわ。
・ツリー全体表示

【9278】Re:変数の型??
発言  tetsuo  - 07/4/10(火) 17:41 -

引用なし
パスワード
   自己解決しました。
コードを下記の通り変更したらうまくいきました。

Set App = CreateObject("JXW.Application")
App.Documents.Open (C:\test\test.jtd)
App.TaroLibrary.PrintDocument
          
'オブジェクトの解放
App.Quit
Set App = Nothing

一太郎の"マクロバイザー"というヘルプのようなものを参照したら
PrintDocumentの記述があり、なんとかうまく機能しました。

しかし、これで印刷できたのはアクティブなシートだけで、
他のシートは出来ないようでした。

もし、複数シートの印刷方法を分かる方がいらっしゃったら
ご指摘お願いいたします。
・ツリー全体表示

【9277】Re:変数の型??
発言  tetsuo  - 07/4/10(火) 13:52 -

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

>Dim App As object
>Dim Doc As object  

>にしたら、いかがでしょ?

変更してみて実行したところ、以前エラーが出ていた行では
エラーが出なくなりました。
しかし、次の行で"test.jtd"の一太郎が開いたところで「オブジェクトが必要です」というエラーが発生しました。該当行は※の部分です。

Dim App As object
Dim Doc As object  

Set App = CreateObject("JXW.Application")  
Set Doc = App.Documents.Open("C:\test\test.jtd")  ※※※※※
Doc.PrintOut
                    
エラーが変わりましたので、調査する幅が広がりました。
ありがとうございます。
エラーが出ている行では、一太郎が開いてんだから次の行に移ればいいじゃん!
って感じがしてますが・・・^^;
マクロバーザーは私も見かけたのですが、一太郎をインストールしている
私でもさっぱりでした。すいません。

また何かお気づきの点がありましたら、よろしくお願いいたします。
・ツリー全体表示

【9276】変数の型??
発言  miya  - 07/4/10(火) 13:31 -

引用なし
パスワード
   なるほど...でも、
変えるなら両方変えてほしかったです(笑)

え〜と...ダメ元で大変恐縮なのですが...

>Dim App As TARO10.Application
>Dim Doc As TARO10.Document  

を、

Dim App As object
Dim Doc As object  

にしたら、いかがでしょ?
VB系言語で一太郎を動かしているらしきソースを
1つ見かけたのですが、
どうも変数の型がObjectのようでしたので...
(肝心の変数宣言部分が欠落してるので、そこがわからず(・・、))

あと、一太郎のマクロバーザーを読んだら載っていた、
という記述もみかけました。ヘルプみたいなものでしょうか?

不確かですみません。よろしくお願いします。
・ツリー全体表示

【9275】Re:App、Doc
発言  tetsuo  - 07/4/10(火) 10:41 -

引用なし
パスワード
   失礼しました。
正しくは下記の通りです。
書き込むに当たって変数を分かりやすい(?)ように変更して
書き込みました。

Dim App As TARO10.Application
Dim Doc As TARO10.Document  

Set App = CreateObject("JXW.Application")   ※※※※※
Set Doc = App.Documents.Open("C:\test\test.jtd")
Doc.PrintOut
                    
App.Quit
Set App = Nothing
Set Doc = Nothing

VBAで一太郎を動かさなければならない、という事象が少ないためか
調べても謎は深まるばかりです。。。

申し訳ありませんが、よろしくお願いします。
・ツリー全体表示

【9274】App、Doc
回答  miya  - 07/4/10(火) 10:16 -

引用なし
パスワード
   以前同じエラー出したときに参照設定のことを失念していたので
もしや...と思ったのですが...失礼しました<m(__)m>
コード見ていて「あれ?」と思ったのは、

>Set App = CreateObject("JXW.Application")   ※※※※※
>Set Doc = jxApp.Documents.Open("C:\test\test.jtd")
     ~~~~~~~
>jxDoc.PrintOut
~~~~~~~

jxApp==>App
jxDoc==>Doc

かな?くらいです。
これだと普通、※の次の行で
「オブジェクトが必要です」というエラーになるかと思うのですが。
(ワードで試した限りにおいては)
なにぶん一太郎がない環境下なのでロクな検証ができず、
申し訳ございません。
・ツリー全体表示

【9273】Re:正規化NGなので厳しい
回答  たん  - 07/4/10(火) 9:49 -

引用なし
パスワード
   テーブル1のデータの持たせ方の時点でNGです。
Accessのようなデータベースというものは、
Excelのように、同じデータを横に伸ばして保存する事は
ありません。(正規化といいます)

テーブル1
No. 種別 数値
111 AA  2
111 BB  1
...
222 AA  3
222 CC  1
...
333 AA  1

テーブル2
種別 月 数値
AA  3  100
AA  4  200
...
BB  3  200
...

テーブル2を以下の様に出したいなら、クロス集計クエリで
>   3月 4月 5月 6月
>AA  100 200 150 300
>BB  200 150 120 200
>CC  250 100 160 120

テーブル1の種別単位の合計を出したいなら、集計クエリで、

あとは、両方のクエリを種別で結合させ、フィールド内で計算させれば
可能です。

そこまで変えるのが困難なのであれば、Accessではなく、
Excelで処理させた方が早いかもしれません。
・ツリー全体表示

【9272】Re:参照設定
発言  tetsuo  - 07/4/10(火) 8:46 -

引用なし
パスワード
   ▼miya さん:
>VBE画面で、【ツール】−【参照設定】画面を開いたときに、
>一太郎に関するライブラリファイルへの参照に、
>チェックが入っていますでしょうか?
>
返信ありがとうございます。
はい。「Taro 10.0 type library」にチェックを入れて
おります。

コード上に誤りは無かったでしょうか?
・ツリー全体表示

【9271】ACCESSでSUMPROCT関数のような機能
質問  さち  - 07/4/9(月) 22:53 -

引用なし
パスワード
   いつも参考にさせて頂いています。
テーブル1
No  AA  BB  CC   DD   EE・・・・・
111  2   1  0.5  1
222  3     1        0.5
333  1     1   1    
テーブル2
   3月 4月 5月 6月
AA  100 200 150 300
BB  200 150 120 200
CC  250 100 160 120
DD
EE


結果
  3月 4月 5月 6月
AA 600 1200 900 1800
 
テーブル1の列AAとテーブル2の行AAの数字を乗算して月ごとに表示したと思っています。テーブル1のNoは他のテーブルと整合性を持たせる為にユニークにする必要があります。クロス集計でもうまくいかず行き詰ってしましました。
EXCEL上でテーブル2を縦横逆にしてSUMPRODUCT関数で合計を出していましたが、ACCESSで合計を出す方法はないでしょうか?
宜しくお願いします。
・ツリー全体表示

【9270】参照設定
回答  miya  - 07/4/9(月) 22:35 -

引用なし
パスワード
   VBE画面で、【ツール】−【参照設定】画面を開いたときに、
一太郎に関するライブラリファイルへの参照に、
チェックが入っていますでしょうか?

Wordが利用可能ならば、
「Microsoft Word X.X Object Library」に
チェックが入っていると思います。

こちらのPCに一太郎がインストールされていないので、
ライブラリファイルの名称がわからず、申し訳ありません。
Googleで「AccessVBA 一太郎 参照設定」で検索しても
具体名が出てこず...どなたかお願いいたします。

中途半端で申し訳ございません。
・ツリー全体表示

【9269】一太郎の印刷について
質問  tetsuo  - 07/4/9(月) 20:34 -

引用なし
パスワード
   はじめまして。哲雄と申します。

現在、CreateObjectメソッドを用いてVBAで一太郎ファイルを
印刷しようとしています。

ネットで情報を集めて下記のようなコードを書いているのですが、
※の行でエラーが出てしまいます。
(ちなみに一太郎10をインストールしています)

Dim App As TARO10.Application
Dim Doc As TARO10.Document  

Set App = CreateObject("JXW.Application")   ※※※※※
Set Doc = jxApp.Documents.Open("C:\test\test.jtd")
jxDoc.PrintOut
                    
App.Quit
Set App = Nothing
Set Doc = Nothing

エラーは「型が一致しません」と出ています。
また、Wordファイルを印刷することは出来たので、
それを参考にして下記のコードを書いております。

すみませんが、よろしくお願いいたします。
・ツリー全体表示

【9268】Re:レポートの枚数について教えてください...
回答  hatena  - 07/4/9(月) 14:52 -

引用なし
パスワード
   >レポートで使用しているPagesをテーブルに出力することは可能なのでしょうか?
>例)番号1のレポートがPages数10で改ページして
>  番号2のレポートがPages数5の場合
>テーブルに
>番号1 10
>番号2 5
>としたいのですがレポートからのページ数を読込むことは可能なのでしょうか?
>よろしくお願いします。

番号1、番号2 という名前のレポートがあるとういことでしょうか。

レポートで =[Pages] で、ページ数を表示させているコントロールがあるとして、

DoCmd.OpenReport "番号1", acViewPreview, , "番号=1", acHidden
ReportPages = Reports!番号1.Pages
DoCmd.Close acReport, "番号1"

で取得できます。

・ツリー全体表示

【9267】Re:レポートの枚数について教えてください...
発言  ですよ  - 07/4/9(月) 11:55 -

引用なし
パスワード
   ▼たけし さん:
やりたい事がよく分からないのですが、
回答が付かないようなので、一応、

[AC97]レポートでグループ毎にPage/Pages形式のページ番号をつける方法
http://support.microsoft.com/default.aspx?scid=kb;ja;JP407754


これが参考になるかもしれません。
(ならなかったらごめんなさい)
・ツリー全体表示

【9266】Re:AccessVBAからのバッチの呼び出しにつ...
お礼  さくら  - 07/4/9(月) 9:27 -

引用なし
パスワード
   ▼Gin_II さん:
返事が遅れて申し訳ありません。

>CreateObject("WScript.shell").Run "C:\TEST.bat " & name, 1, True
確かに変数をダブルクォーテションから出した上記の形で記載したら
思ったように動作しました。


>> 格納の仕方も "file1,file2,file3,....."のようにしていきたいのですが、バッチでこのようなことは出来るのでしょうか。
この件に関しても上の情報から自己解決できました。

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

【9265】Re:フォームを上下に並べて表示したい
回答  ですよ  - 07/4/9(月) 8:49 -

引用なし
パスワード
   ▼さち さん:
マクロの「コマンドの実行」で「上下に並べて表示」というのがあります。(Acc2000)
・ツリー全体表示

【9264】サブレポートの行数により、レポートを改...
質問  もも  - 07/4/9(月) 0:23 -

引用なし
パスワード
   サブレポート(ソース:子テーブル)
レポート(ソース:親テーブル)という、
サブレポートのあるレポートを作成しています。

印刷用のレポートなので、
サブレポートの大きさを指定する必要があり、
印刷時拡張プロパティが使えません。

そこで、
サブレポートの大きさ(10行)よりもレコード数が多かったら、
レポートを改ページして、
レポートの内容はそのまま(親テーブルの内容なので)で、
サブレポートの内容だけを、
次の行から表示させる方法はあるのでしょうか?

分かりにくくて申し訳ありませんが、
教えてください。
よろしくお願いします。
・ツリー全体表示

【9263】フォームを上下に並べて表示したい
質問  さち  - 07/4/8(日) 5:27 -

引用なし
パスワード
   2つのフォームを上下に並べて表示したいのですが、マクロでは「ウィンドウを重ねて表示」しかありませんVBAで実行することは可能でしょうか?宜しくお願いします。
・ツリー全体表示

【9262】Re:97データを2002に変換するのに失敗しま...
回答  Gin_II  - 07/4/7(土) 12:13 -

引用なし
パスワード
   >1.データを開くと旧バージョンと表示されます。
>2.ツールから変換しようとすると変換済みです。と表示されます。
>申し訳ありませんが、この状態のデータを変換する方法を教えていただけますか。

Access の本体だけを起動した状態で、変換をしてみる
Access2002 で新規mdbファイルを作成して、インポートを行ってみる

などを試してみてください。
・ツリー全体表示

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