Access VBA質問箱 IV

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

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


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

【9240】データソースの選択
質問  ケイ  - 07/3/28(水) 0:51 -

引用なし
パスワード
   はじめまして。

先日Excel上からデータベースを直接更新するような処理を作成したのですが、
使っていたPCが突然壊れてしまったので、別のPC上で動かしたところ
VBE上で"コンパイルエラー:ユーザ定義型は定義されていません etc"と
エラーが出るようになってしまいました。


ネットで色々調べてみたところ、VBE内のツール→参照設定が怪しそうだったので
いくつか追加してみたところ、動いて正常に処理も行われるようになったのですが、
毎回"データ ソースの選択"という画面が出るようになってしまいました。
(対象DBなどを手動で選択すれば、処理自体は正常に行われます。
 /しかし前のPCでは何も出ずに実行されていました。)


これを出さないようにしたいのですが、過去レスも色々読み返してみたのですが
これと言ったものが見つけられませんでしたので
どなたか解決方法をご存知の方がいらっしゃいましたら宜しくご教授願います。
(もしどこかで既出でしたらすみません。)


・必要なDBなどは新しいPCでもODBC登録済み
・DB名、サーバ名、パスなどは全てVBE内にベタ書きしてあります
 (汎用性を考える必要が無いもので^^;
・現在の参照設定はActiveX DataObject2.x、DAO3.6Objectなどで、参照不可はありません。
・ツリー全体表示

【9239】Re:レポートのカウントをしたい
発言  Gin_II  - 07/3/27(火) 23:44 -

引用なし
パスワード
   > 70〜80件くらいです。

ちゃんと見てはいますが、なにゆえ新規スレッドあげまくりなんでしょうか? ^^;

あと、このページ数については興味本位で聞いているので、きちんとした回答は
できないです。

ちなみに、レーザプリンタなんかを使っていて、それだけかかるんですか?
そうであれば、どのようなコードを記述しているのかも気になります。
(これも興味本位です。)

ただ、それを提示してもらうと、そっちの改善案がでるかも。
(ほかの誰かから ^^;)
・ツリー全体表示

【9238】Re:チェックボックス
回答  Gin_II  - 07/3/27(火) 18:06 -

引用なし
パスワード
   If Me!チェックボックス名 Then
  MsgBox "○○を確認してください。"
End If

とかってことでしょうか?
#これを個数分記述。

もし、チェックボックス名が
chk01
chk02
のようになっていて、

> ○○を確認してください。
 ~~~~この部分も、何らかの規則性があるのなら、For Next 文なんかを
 使えるとは思いますけど。
・ツリー全体表示

【9237】Re:テーブル名について教えてください
お礼  たけし  - 07/3/27(火) 15:25 -

引用なし
パスワード
   ▼Gin_II さん:
ありがとうございました。
できました。
アドバイスありがとうございます。
全角英数はやめました。
・ツリー全体表示

【9236】チェックボックス
質問  ぶた肉  - 07/3/27(火) 12:11 -

引用なし
パスワード
   こんにちは。初めて質問させて頂きます。

フォームで作ったチェックボックス(数十個あります)にチェックを入れ、判断と名前をつけたボタンを押すと、チェックを入れた項目に対して『○○を確認してください』というメッセージを返すプログラムを作りたいのですが、どう組み立てれば良いのでしょうか。くだらない質問で申し訳ありません・・・。どうぞよろしくお願い致します。
・ツリー全体表示

【9235】Re:テーブル名について教えてください
回答  Gin_II  - 07/3/27(火) 10:59 -

引用なし
パスワード
   > Db.Execute "CREATE TABLE テーブル名(入力No STRING(3)," _
>                     & "帳票No STRING(50)," _
>                     & "帳票名 STRING(50)," _
>                     & "日付 STRING(8)," _
>                     & "店舗コード STRING(3)," _
>                     & "入庫 DOUBLE," _
>                     & "出庫 DOUBLE," _
>                     & "摘要 STRING(40))"

Db.Execute "CREATE TABLE " & テーブル名 & "(入力No STRING(3)," _
〜省略〜

のようにしてください。

あと、フィールド名として、全角英数を使っているようですが、使わないほうが
無難ですよ ^^;
・ツリー全体表示

【9234】テーブル名について教えてください
質問  たけし  - 07/3/27(火) 9:18 -

引用なし
パスワード
   あるテーブルを読込んでその項目とテーブルをつけてテーブルを作成したいのですがみな同じ名前になってしまいます。
どのように記述すればいいのでしょうか?

Dim Db As Database
Dim INRs As Recordset
Dim OTRs As Recordset
Dim 読込 As String
Dim テーブル名 As String

Set Db = CurrentDb

読込 = "用度品テーブル"

Set INRs = Db.OpenRecordset(読込, dbOpenDynaset)

Do Until INRs.EOF

テーブル名 = INRs!入力No & "テーブル"

Db.Execute "CREATE TABLE テーブル名(入力No STRING(3)," _
                    & "帳票No STRING(50)," _
                    & "帳票名 STRING(50)," _
                    & "日付 STRING(8)," _
                    & "店舗コード STRING(3)," _
                    & "入庫 DOUBLE," _
                    & "出庫 DOUBLE," _
                    & "摘要 STRING(40))"
                   
Set OTRs = Db.OpenRecordset("テーブル名", dbOpenDynaset)
上記のモジュールで記述するとみんなテーブル名になってしないます。
本当はINRs!入力No & "テーブル"にしたいのです。
よろしくお願いします
・ツリー全体表示

【9233】レポートのカウントをしたい
発言  isobe  - 07/3/27(火) 7:55 -

引用なし
パスワード
   70〜80件くらいです。
・ツリー全体表示

【9232】Re:警告メッセージを表示について
お礼  たけし  - 07/3/26(月) 17:24 -

引用なし
パスワード
   ▼Gin_II さん:
できました。
ありがとうございます。
・ツリー全体表示

【9231】Ginさんへ
発言  isobe  - 07/3/26(月) 17:14 -

引用なし
パスワード
   70〜80件くらいです。よろしくお願いします。
・ツリー全体表示

【9230】Gin
発言  isobe  - 07/3/26(月) 16:22 -

引用なし
パスワード
   70〜80枚くらいあります。
・ツリー全体表示

【9229】Ginさんへ
発言  isobe  - 07/3/26(月) 16:19 -

引用なし
パスワード
   70〜80枚くらいあります。
・ツリー全体表示

【9228】Re:警告メッセージを表示について
回答  Gin_II  - 07/3/26(月) 16:16 -

引用なし
パスワード
   >Excelが終了しなくて、枠?だけ残ってしまいます。
>Excelを終了するにはどうすればいいのでしょうか?
>よろしくお願いします。

  Dim objExcel    As Object
  Dim objBook     As Object
  Dim objSheet    As Object
  
  Set objExcel = CreateObject("Excel.Application")
  objExcel.Visible = True
  
  Set objBook = objExcel.Workbooks.Open("D:\伝票.XLS")
  Set objSheet = objBook.Worksheets("シート名")
  
  objSheet.Range("H2:K2").Value = "xxx"

  objBook.Close False
  objExcel.Quit
  
  Set objExcel = Nothing

分かりづらいので、きちんと Excel.Application 〜 WorkBook 〜 WorkSheet を
変数にしてやるとどうでしょうか?
・ツリー全体表示

【9227】Re:警告メッセージを表示について
質問  たけし  - 07/3/26(月) 15:35 -

引用なし
パスワード
   ▼Gin_II さん:
今下記のモジュールを作成したのですが?
Excelが終了しなくて、枠?だけ残ってしまいます。
Excelを終了するにはどうすればいいのでしょうか?
よろしくお願いします。

Public Function T印刷()

Dim Excel As Object
Dim DB As DAO.Database
Dim RS As DAO.Recordset

Set Excel = GetObject("D:\伝票.XLS", "EXCEL.SHEET")

Set DB = CurrentDb
Set RS = DB.OpenRecordset("T抽出", dbOpenDynaset)

Excel.Application.Visible = True
Excel.Parent.WINDOWS(1).Visible = True

Do Until RS.EOF

Excel.Application.RANGE("H2:K2").Value = RS!日付

Excel.PrintOut

RS.MoveNext
Loop

RS.Close
Set RS = Nothing
Excel.Close False

Set Excel = Nothing

End Function
・ツリー全体表示

【9226】Re:警告メッセージを表示について
回答  Gin_II  - 07/3/26(月) 14:08 -

引用なし
パスワード
   > ActiveWindow.Close Savechanges:=False
> と記述するとコンパイルエラーで定義されていません

ActiveWindow は、Excelのプロパティですので、突然、AccessVBAの中に
記述しても当然、エラーになります。

> oBook.SaveAs"落書き.xls"

oBook.Close False

では、どうでしょうか?
・ツリー全体表示

【9225】Re:警告メッセージを表示について
質問  たけし  - 07/3/26(月) 13:37 -

引用なし
パスワード
   ▼Gin_II さん:
ActiveWindow.Close Savechanges:=False
と記述するとコンパイルエラーで定義されていません
とメッセージがでます。
この記述ではだめなのでしょうか?
よろしくお願いします。
・ツリー全体表示

【9224】Re:警告メッセージを表示について
回答  Gin_II  - 07/3/26(月) 11:55 -

引用なし
パスワード
   >いろいろ調べたのですが記述がわかりません。

ExcelVBAのヘルプで確認してください。
・ツリー全体表示

【9223】Re:警告メッセージを表示について
質問  たけし  - 07/3/26(月) 11:46 -

引用なし
パスワード
   ▼Gin_II さん:
すいません
いろいろ調べたのですが記述がわかりません。
よろしくお願いします
・ツリー全体表示

【9222】Re:レポートのカウントをしたい
発言  Gin_II  - 07/3/26(月) 10:02 -

引用なし
パスワード
   > ところが勘定科目を総て印刷すると20分くらいかかってしまいます。

何ページぐらいあるんでしょうか?


> フォームを1つ作り、「何件の印刷データがあり、現在何件目を印刷中です。」
> という表示をさせ、印刷が終了したら「終了しました。」というメッセージを表示させ、
> 終了させたいと思います。

現在の1.5倍ぐらい時間がかかることになるかもしれませんがいいのでしょうか?
・ツリー全体表示

【9221】Re:警告メッセージを表示について
回答  Gin_II  - 07/3/26(月) 9:47 -

引用なし
パスワード
   >セーブしないで終了するにはどうすればいいですか?

Workbook オブジェクトの Close メソッドで、SaveChanges 引数を使ってみてください。
・ツリー全体表示

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