AccessのVBAからExcelのブック(通常既に開いています)のセルの値を参照するものを作成
しているのですが、うまくいきません。ご教授頂けないでしょうか。

Set Set myXlsSheet = myXls.Worksheets("sheet1") の行がインデックスが有効範囲にあり
ません。とエラーがでます。

ここで既に開いているExcelブック自体をWorkbooks.open を使用せずにオブジェクト自体をset
して、各シート値を参照することができないでしょうか。

現状できているコード
Dim myXls As Object
Dim myXlsSheet As Object

Set myXls = CreateObject("Excel.Application")
Set myXlsSheet = CreateObject("Excel.Sheet")
myXls.Visible = False

' Set myXlsSheet = myXls.Workbooks.Open("C:\test.xls", 1) 'これだとまた同じファイルを開いて処理するため処理が遅くなる。

Set myXls = myXls.Workbooks("test.xls") 'インデックスが有効範囲にありません。のエラーがここで出ます。
Set myXlsSheet = myXls.Worksheets("sheet1")

Debug.Print myXls.WorksSheets("sheet1").Cells(1, 1).Value

myXls.Close
Set myXls = Nothing
myXls.Quit
Set myXlsSheet = Nothing
MsgBox "完了"

このQ&Aに関連する最新のQ&A

A 回答 (3件)

> ここで既に開いているExcelブック自体をWorkbooks.open を使用せずにオブジェクト自体をset


> して、各シート値を参照することができないでしょうか。

そういうときは、GetObject 関数の出番です。
対象のブックが開かれていないとエラーが発生します。
必要なエラー処理を追加すること。
多分、ネットにサンプルは山ほどあるでしょう。

以下は、開かれているブックを参照するだけのコードですが
ブックを閉じて、エクセルも終了させるなら
コメントをはずしてください。

Sub test()
' Dim myXls As Object
Dim myBook As Object
Dim mySheet As Object

Set myBook = GetObject("C:\Test\Sample.xls")

' Set myXls = myBook.Application

Set mySheet = myBook.Worksheets("Sheet1")
Debug.Print mySheet.Cells(1, 1).Value

' myBook.Close False
' Set myBook = Nothing
' myXls.Quit
' Set myXls = Nothing
MsgBox "完了"
End Sub
    • good
    • 0
この回答へのお礼

できました。ありがとうございます。

お礼日時:2011/04/15 18:03

普通はオブジェクトを設定して外部ファイルを


開くので、同じAccessファイルでも同様です。

しかし、他のファイルとしてのAccessファイル
と同様に、早い、遅い、の問題ならば、Excelのsheetを
テーブルとしてリンクするならば早いです。

テーブルとしてリンクする方法は、

http://office.microsoft.com/ja-jp/access-help/HP …


リンク設定後、たとえば

Sub cc()
Debug.Print DLookup("F1", "sheet1")
End Sub


あるいは、DAOを使用して
Sheet1のF1のデータをすべて
表示するならば、

Sub kk()
Dim db As Database
Dim rs As Recordset

Set db = CurrentDb
Set rs = db.OpenRecordset("sheet1")

Do Until rs.EOF
Debug.Print rs!F1
rs.MoveNext
Loop
End Sub

のようにできます。

リンクした場合はシートの名前がAccess側で
テーブル名として登録されます。
なお、Accessのバージョンによってはリンクした
シートは参照専用になります。この場合は
参照でいいのでそのまま使用できます。
    • good
    • 0
この回答へのお礼

処理速度が速そうですね。テストしてみます。ありがとうございました。

お礼日時:2011/04/15 18:07

dim myxls as object


dim mybook as object
dim mysheet as object 'ダミー

set myxls = createobject("Excel.Application") 'これはエクセルアプリケーションオブジェクト
set mybook = myxls.workbooks.open("c:\test\test.xls") 'どこかではブックを開かないと始まらない

debug.print mybook.worksheets("Sheet1").cells(1, 1).value
mybook.close false
set mybook = nothing
myxls.quit
set myxls = nothing
msgbox "quit"
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qインデックスラベルの印刷方法について

インデックスラベル 20シート(240片)23×29mmのインデックスにパソコンを使って印刷したいのですがどうしたらいいでしょうか。

Aベストアンサー

再びReffyです。検索かけましたが自分でも見つけられなかったのでLionさんに聞きました!そうしたらなんと、こちらの会社ではDLサービスをやっていなかったそうです。
あったほうがいいですかね?と逆に聞かれてびっくりでした。なので、ごめんなさい、DLするという方法は無理のようです。かくなる上はWordソフトなどを使い、まず台紙のサイズを設定し、ラベルの縁だと数字が小さすぎるので文字始めの位置、文字終わりの位置までを入れて余白設定し、そこに打ち込むしか方法がないと思われます。

もしくは#3の方もかかれたようにエーワンならDLと利用も簡単なものがあるので、そちらでチェックしたのちラベルの再購入をご検討になる方が早いかも知れません。

QExcel2000マクロ_ブック名に一貫性が無くて既に開いている物の間のコピー等

何方か、回答をお願いします。
(A.xlsのAAAシート)(B.xlsのBBBシート)この2つ間のセル値をコピーしたい
のですが(共にブック名シート名に一貫性は無しで、既に開いています。)
マクロ付.xlsに下記のマクロを書いてA.xlsのAAAシートがアクティブの時にマクロを
実行してtwwにAAAシートをセット出来たのですが、Bk1にB.xlsのBBBシートをセット出来ません。
Application.Waitで止めている間にアクティブシートを変えようとしましたが駄目
Application.Dialogs(xlDialogWorkbookUnhide).Showでも駄目でした。
何方か、マクロ実行中のアクティブシート変更方法を教えて下さい。
又、この様なブック名に一貫性が無くて既に開いている物の間のコピー等はどの様に
するのか参考になる物が有れば教えて下さい。

Sub コピー()

Dim Bk1 As Worksheet
Dim tww As Worksheet

Set tww = ActiveWorkbook.Sheets(1)

'ここが分かりません

Set Bk1 = ActiveWorkbook.Sheets(1)

'-------1個目
tww.Range("D10").Value = Bk1.Range("H9").Value

Set Bk1 = Nothing: Set tww = Nothing

End Sub

何方か、回答をお願いします。
(A.xlsのAAAシート)(B.xlsのBBBシート)この2つ間のセル値をコピーしたい
のですが(共にブック名シート名に一貫性は無しで、既に開いています。)
マクロ付.xlsに下記のマクロを書いてA.xlsのAAAシートがアクティブの時にマクロを
実行してtwwにAAAシートをセット出来たのですが、Bk1にB.xlsのBBBシートをセット出来ません。
Application.Waitで止めている間にアクティブシートを変えようとしましたが駄目
Application.Dialogs(xlDialogWorkbookUnhide).Showでも駄目でし...続きを読む

Aベストアンサー

マクロ付.xlsの標準モジュールではなく、
ThisWorkbookのモジュールに
'=============================================================
Option Explicit
Private sht1 As Worksheet
Private WithEvents app As Application
Sub main()
  If ActiveSheet.Type = xlWorksheet Then
   Set app = Application
   Set sht1 = Application.ActiveSheet
   Application.StatusBar = "データをやり取りするシートをアクティブにしてください"
   End If
End Sub
'============================================================
Private Sub app_WorkbookActivate(ByVal Wb As Workbook)
  If Wb.Sheets(1).Type = xlWorksheet Then
   sht1.Cells(1, 1).Value = 1
   Wb.Sheets(1).Cells(2, 1).Value = sht1.Cells(1, 1).Value
   Application.StatusBar = False
   End If
  Set app = Nothing
End Sub

として、データ交換する最初のシートをアクティブにしてThisworkbook.mainを実行してください。

次に適当なブックをアクティブにしてください。
最初にアクティブになっていたシートのA1に1が設定され、
選択したブックの最左端シートのセルA2に
最初にアクティブになっていたシートのA1の値がコピーされます。

一例です。参考にしてください。

マクロ付.xlsの標準モジュールではなく、
ThisWorkbookのモジュールに
'=============================================================
Option Explicit
Private sht1 As Worksheet
Private WithEvents app As Application
Sub main()
  If ActiveSheet.Type = xlWorksheet Then
   Set app = Application
   Set sht1 = Application.ActiveSheet
   Application.StatusBar = "データをやり取りするシートをアクティブにしてください"
   End If
End Sub
'=========================...続きを読む

Qインデックスシールの印刷。(ラベル屋さん)

インデックスシールを印刷しようと、ラベル屋さんを使用しているのですが、印刷がうまくいきません。

■シール⇒23mm×29mm(中)/12片×15シート
■プリンタ⇒エプソンPM-A750

用紙設定をしようとすると、このシートの大きさに該当するものがなく
ユーザー設定にしても、数値を入力するところが見当たりません。
(ハガキサイズより、1シートの大きさが小さいので、定規で測ってみたら縦13cm、横8cmでした)
ヘルプを見ても、わかりませんでした。
印刷の微妙な数値を設定しても、もとの用紙設定が違うせいかうまくいきません。
何か方法はありますか?

Aベストアンサー

シートの短辺がプリンターの設定できる用紙幅よりも短いから印刷できません。

ユーザー設定の用紙サイズは、一覧の一番下にありますので、それを選ぶと数値を入れる窓が開きます。

諦めてもう一回り大きなシートを用意してください。

ダメ元で良ければ130x89mmに設定して、印刷位置を微調整ですねぇ。
端のシールには印刷できないですけどね(^^;

Qブック間を参照しているVBAのブック名

こんにちは、皆様のお知恵を御貸しください。

現在、VBAにてブック間で集計を行っています。
*集計用のブックがあり、コマンドボタンを押すと、各個人(15人分)のブックを読みに行き、集計する。

しかし、まもなく新年度を迎えるにあたり、年号や担当者の変更を行わなくてはいけません。

(ブック名例) 現在:ブック2012(担当1)  新年度:ブック2013(担当2)
*年号は毎年更新し、上記の担当1・担当2の場所には個人名が記入されています。

毎年、参照するブック名を変更するために、VBAを書き換えるのも面倒ですし、VBAがわかる人材がいつも居るとは限りません。

何か良い案がないか、皆様よろしくお願いします。

Aベストアンサー

集計用ブックに、定義情報シートを追加する。

たとえば、定義情報シートのA1セルに"2012"と設定する
同様に、B1セルからB15セルにかけて"担当1"、"担当2"と設定しておく。

VBA側では、読み込むブック名を一旦変数で編集処理にしておく

ブック名変数 = "ブック" & A1セルの値 & "(" & B1セルの値 & ")"

というような感じ。

B列の定義データ分ループするような仕組みにすれば担当者が20人に増えたり、10人に減ったりしても定義情報の増減だけですむ。
年が改まったときも、A1セルの更新だけですむ。

QCD/DVDラベル印刷について

Mac OSX Leopardにアップグレードしたら、今まで使用してきたプリンターが非対応となってしまいましたので買い換えを検討しています。
(OSX付属のドライバで印刷は出来るのですが、スキャンが出来ないので)

オールインワンタイプで、かつ小型の機種が良いので、以下を検討しています。
http://www.brother.co.jp/product/mymio/info/dcp155c/index.htm

CDやDVDのラベル印刷もしたいので、プリンター標準でCD/DVDラベル印刷機能が
付いている機種でもいいのですが、大きさを考えると上記のブラザーの機種に
惹かれます。。。

そこでお聞きしたいのですが、

ラベルマイティ
http://www.justsystems.com/jp/label/
ラベル屋さん
http://www.labelyasan.com/

このようなラベル作成ソフトを使用する事で、上記のCD/DVDラベルを
作製する事が出来るのでしょうか?

ご存知の方いらっしゃいましたら教えて頂けますと助かります。
よろしくお願い致します。

Mac OSX Leopardにアップグレードしたら、今まで使用してきたプリンターが非対応となってしまいましたので買い換えを検討しています。
(OSX付属のドライバで印刷は出来るのですが、スキャンが出来ないので)

オールインワンタイプで、かつ小型の機種が良いので、以下を検討しています。
http://www.brother.co.jp/product/mymio/info/dcp155c/index.htm

CDやDVDのラベル印刷もしたいので、プリンター標準でCD/DVDラベル印刷機能が
付いている機種でもいいのですが、大きさを考えると上記のブラザーの機...続きを読む

Aベストアンサー

非対応と明記されているなら使えないですが、そうでないなら単にメーカー側で確認がとれていないだけで動く可能性はあります。
不具合あったり、動かない場合もあるけど。

Leopard対応と明記はされていませんが、ラベル作成ソフトはact2で扱っている「ディスクマイスター」とか他にもありますよ。
システム要項は「10.2.8、v.10.3.9、v.10.4以降」となっています。
http://www.act2.com/products/discmeister/

ダイレクトプリントではなく、ラベル紙へのプリントであれば、別にこういった専用のソフトを使わないでもワープロやペイント/ドローソフト等を使っても出来ます。
位置合わせが少し面倒なだけで。
実際、私はAppleWorksのドロー機能やIllustratorで作っています。


mymioの大きさ&価格は確かに魅力がありますが、
CDレーベルのダイレクト印刷できる機種選んだ方がいいかと思います。
ラベルは上手く貼らないと、ドライブ内で剥がれたり、高速回転時に重心がずれたりして、ドライブを傷める原因になります。
特にスロットインタイプのドライブでは。

非対応と明記されているなら使えないですが、そうでないなら単にメーカー側で確認がとれていないだけで動く可能性はあります。
不具合あったり、動かない場合もあるけど。

Leopard対応と明記はされていませんが、ラベル作成ソフトはact2で扱っている「ディスクマイスター」とか他にもありますよ。
システム要項は「10.2.8、v.10.3.9、v.10.4以降」となっています。
http://www.act2.com/products/discmeister/

ダイレクトプリントではなく、ラベル紙へのプリントであれば、別にこういった専用のソフトを...続きを読む

QExcel VBA 他のブックへ値を返す

Excelで「備品」というブックと「不用品報告」というブックを作り、「備品」の方でボタンをクリックすると「不用品報告」の"一覧"というシートに順々に入力されるように組んでみました。

※「備品」「不用品報告」は同じフォルダに入っています。

Application.ScreenUpdating = False

Dim thisBook As Workbook
Dim workBook1 As Workbook
Dim lastrow2 As Long

Set thisBook = ThisWorkbook
Set workBook1 = Workbooks.Open(thisBook.Path & "\不用品報告.xlsx")

lastrow2 = workBook1.Worksheets("廃棄一覧").Range("C" & Rows.Count).End(xlUp).Row + 1

workBook1.Worksheets("廃棄一覧").Range("G" & lastrow2).Value = thisBook.Worksheets("一覧").Cells(ActiveCell.Row, 15).Value
workBook1.Worksheets("廃棄一覧").Range("H" & lastrow2).Value = "報告する"

workBook1.Close SaveChanges:=True

Application.ScreenUpdating = True

MsgBox "廃棄処理が完了しました。不用品報告ファイルの一覧にデータが追加されています。", vbInformation, "廃棄処理"

End If

という形です。

「不用品報告」ブックにデータが飛ぶのですが、ActiveCell.Rowと設定しているにも関わらず一定の行のデータしか飛んでくれません。

※例
5行目のデータを飛ばしたいのに(アクティブなセルは5行目のセルになっている状態)7行目のデータが入る
という感じです。

違うブックにデータを飛ばすときには「ActiveCell~」は使えないのでしょうか。もしくはどこか不具合があるのでしょうか。

お詳しい方がいらっしゃいましたら、ご教授願います。

Excelで「備品」というブックと「不用品報告」というブックを作り、「備品」の方でボタンをクリックすると「不用品報告」の"一覧"というシートに順々に入力されるように組んでみました。

※「備品」「不用品報告」は同じフォルダに入っています。

Application.ScreenUpdating = False

Dim thisBook As Workbook
Dim workBook1 As Workbook
Dim lastrow2 As Long

Set thisBook = ThisWorkbook
Set workBook1 = Workbooks.Open(thisBook.Path & "\不用品報告.xlsx")

lastrow2 = workBook1.Worksheets("廃棄一覧...続きを読む

Aベストアンサー

不用品報告をマクロの中で開いた時点で、アクティブセルはそっちのブック(の開いているシートの)になります。
それまで開いていたthisworkbookの(=マクロを起動した時点の)、アクティブセルではありません。


簡易な直し方:
set workbook1=workbook.open(…不用品報告
thisworkbook.activate

などのようにして、アクティブを引き戻してください。


別の対処法:
sub macro1()
 dim w as workbook
 dim targetrow as long
 dim rx as long

 rx = activecell.row
 set w = workbooks.open(thisworkbook.path & ""\不用品報告.xlsx")
 activeworkbook.worksheets("廃棄一覧").select
 targetrow = range("C65536").end(xlup).row + 1

 cells(targetrow, "G").value = thisworkbook.worksheets("一覧").cells(rx, 15).value
 cells(targetrow, "H").value = "報告する"

 w.close savechanges:=true
 msgbox "DONE"
end sub

不用品報告をマクロの中で開いた時点で、アクティブセルはそっちのブック(の開いているシートの)になります。
それまで開いていたthisworkbookの(=マクロを起動した時点の)、アクティブセルではありません。


簡易な直し方:
set workbook1=workbook.open(…不用品報告
thisworkbook.activate

などのようにして、アクティブを引き戻してください。


別の対処法:
sub macro1()
 dim w as workbook
 dim targetrow as long
 dim rx as long

 rx = activecell.row
 set w = workbooks.open(thisworkboo...続きを読む

Q見出し用のインデックスラベル

帳簿などにつける見出し用のインデックスラベルを
パソコンで印刷したいのですが、
インデックスラベルのフォームがあれば、教えて下さい。

ワード、エクセル、アクセス、ファイルメーカーで
使えるものが希望です。

Aベストアンサー

ちょっと調べてみたところ、
テンプレートバンク(http://www.templatebank.com/)
というサイトを見つけました。

参考URLにあげたところからニチバンかヒサゴを選ぶと
インデックスラベルがあります。

参考URL:http://www.templatebank.com/bank/ca_list1.asp?ca=31

Qaccess での値参照およびコピー

はじめまして、

どなたかアクセス2007での処理方法を教えてください。
アクセス初心者です。よろしくお願いいたします。

以下のような3つのテーブルがあります。
salesテーブルはcsvファイルをインポートしたワークテーブルです。

テーブル名:sales(ワークテーブル)

受注番号名前   住所
3   さぶろう 長野県
4   しろう  愛知県


ここから追加クエリで以下のテーブルにデータを追加しました。
(ID12と13、IDはオートナンバーです。)
テーブル名:顧客マスター
顧客ID名前住所 
10たろう 東京都
11じろう 神奈川県
12さぶろう長野県
13しろう 愛知県

そして以下のテーブルにも追加クエリでワークテーブルの情報を追加しました。
テーブル名:受注情報(受注番号3と4を追加)

受注番号顧客ID  商品名
1    10   りんご(すでにあるデータ)
2    11   ばなな(すでにあるデータ)
3         りんご(今回ワークテーブルから追加したデータ)
4         みかん(今回ワークテーブルから追加したデータ)

上記の場合で、受注情報テーブルに顧客IDを挿入するには
どのような方法で追加すればよいのでしょうか?

ワークテーブルの中に顧客IDはないので単純な追加クエリでは
できなのでどうやったらよいか分かりません。
(顧客テーブルと受注情報テーブルは結合されています。)

同姓同名を避けるためにsalesテーブルの名前&住所と顧客マスターテーブルの
名前&住所を比べて、同じものの顧客IDを受注情報テーブルの顧客ID欄に入れたいのです。
そうすると顧客テーブルと受注情報テーブルの顧客IDのリレーションシップに矛盾が
起きないのではないかと思っています。

よろしくお願いいたします。

はじめまして、

どなたかアクセス2007での処理方法を教えてください。
アクセス初心者です。よろしくお願いいたします。

以下のような3つのテーブルがあります。
salesテーブルはcsvファイルをインポートしたワークテーブルです。

テーブル名:sales(ワークテーブル)

受注番号名前   住所
3   さぶろう 長野県
4   しろう  愛知県


ここから追加クエリで以下のテーブルにデータを追加しました。
(ID12と13、IDはオートナンバーです。)
テーブル名:顧客マスター
顧...続きを読む

Aベストアンサー

>顧客マスタには受注番号が入っていないのですが、
>どのようにしたらよろしいでしょうか?
失礼

salesと受注情報を受注番号で結合

の間違いです

Q600枚の写真を安く、手間掛けずインデックス印刷

撮り溜めた600枚の写真をプリントしたいです。
良いサービスを探しているのですがなかなか見つかりません。
お知恵を貸してください。

やりたいこと:
1.A4紙に対し18コマ~35コマくらいの大きさで配置したい。
2.写真の縦横を編集可能あるいは、編集済みのものをそのまま配置したい
3.労力を掛けたくないので、アップロード等が軽快である
4.大きさはA4でなくてもよいが、ベストはA4
5.印刷クオリティは、そこそこはほしい

さがしてみたところ、最もイメージに近いのが富士フィルムの「ストーリーフォト」。
http://fujifilm.jp/personal/print/photo/storyphoto/specs.html
というか仕上がりはイメージどおりです。
しかし、何しろ価格が高いのです。一枚350円ですから、11900円にもなってしまいます。

価格が理想的なサービスとしては、「オートアルバム」でした。
600枚詰め込んでも3000円程度でできるようです。
ただし使ってみたところアップロードが絶望的で、10枚ずつがやっとでした。
https://autoalbum.jp/item/index.html

理想通りのサービスがありそうでなくて困っています。
特に2番の条件を満たしたものがありません。
できればネットで注文できればベストですが、
とりあえず手段は写真屋さん、自宅印刷も視野にいれております。

よろしくお願い致します。

撮り溜めた600枚の写真をプリントしたいです。
良いサービスを探しているのですがなかなか見つかりません。
お知恵を貸してください。

やりたいこと:
1.A4紙に対し18コマ~35コマくらいの大きさで配置したい。
2.写真の縦横を編集可能あるいは、編集済みのものをそのまま配置したい
3.労力を掛けたくないので、アップロード等が軽快である
4.大きさはA4でなくてもよいが、ベストはA4
5.印刷クオリティは、そこそこはほしい

さがしてみたところ、最もイメージに近いのが富士フィルムの「ス...続きを読む

Aベストアンサー

フリーソフト 「 ViX 」
http://www.vector.co.jp/soft/win95/art/se083112.html
エクスプローラ風統合画像ビュアー
「 ViX 」を起動してアルバムにしたいフォルダーを表示し、
メニューの「画像」をクリック、「アルバム保存」を選択し
どのように保存するか設定します。

画像出力サイズ 1600×1200
縮小画像配置数 7×5
縮小画像サイズ 200×150
添付画像は上下左右のマージン 0

一部の写真はわざとモザイクを付けました。

私の場合はWindows7でも動作します。
私の持っているHPのプリンターなら普通紙でもきれいに印刷できます。

QアクセスVBA テキストボックス入力値からの参照

マイクロソフトアクセス初心者です。
現在、アクセスでデータベースを作成しています。
2つのフォーム(フォーム(1)、フォーム(2))、2つのテーブル(入力情報、マスタ)、2つのテーブルをもとにした1つのレポートを作成しています。
『フォーム(1)』のテキストボックスAに入力された値を、Dlookup関数で『フォーム(2)』のテキストボックスBに数値を参照しています。
『フォーム(2)』のテキストボックスに表示された値を、『フォーム(2)』に設置されたコマンドボタンをクリックすると、VBAで『テーブル入力情報』のフィールドAに入力されるようにしています。フィールドAについてのマスタとなるテーブルが『テーブルマスタ』です。
リレーションシップを設定せず、ただ単に値を入力することは出来るのですが、レポートを作成するにあたって、『テーブル入力情報』と『テーブルマスタ』のフィールドAに1(テーブルマスタ)対多(テーブル入力情報)のリレーションシップを設定したいと思っています。
リレーションシップを設定し、テキストボックスBに表示された数値を『テーブル入力情報』に入力する際、『テーブルマスタ』から該当するデータを選択して『テーブル入力情報』に入力されるようにしたいと思うのですが、現状では、リレーションシップを設定すると、入力値が真っ白になってしまい、レポートにも入力したデータが反映されません。
ちなみに、入力する際はフィールドA=Me.テキストボックスBのようにしています。
何か良い解決策がありましたら、是非教えていただけませんでしょうか?
分かり難い文章かと思いますが、どうぞ宜しくお願い申し上げます。

マイクロソフトアクセス初心者です。
現在、アクセスでデータベースを作成しています。
2つのフォーム(フォーム(1)、フォーム(2))、2つのテーブル(入力情報、マスタ)、2つのテーブルをもとにした1つのレポートを作成しています。
『フォーム(1)』のテキストボックスAに入力された値を、Dlookup関数で『フォーム(2)』のテキストボックスBに数値を参照しています。
『フォーム(2)』のテキストボックスに表示された値を、『フォーム(2)』に設置されたコマンドボタンをクリックすると、VBAで『テーブル入力情報』...続きを読む

Aベストアンサー

私とimogasiさんのツープラトン攻撃でさぞ落ち込んでいるかと思います (^^ゞ
しかしながら、どこのサイトでも同様なレスがつくとおもいますよ。
さて
#2ではっきりと分かったこと
テーブルマスタ
ID主キー オートナンバー型
社員番号長整数型??インデックスの設定は??

テーブル入力情報
社員番号長整数型??インデックスの設定は??

テーブルマスタがマスターテーブルで、テーブル入力情報がトランザクションテーブル的な
感じですが、テーブル入力情報に社員ごとの詳しい情報が入っているのでしょうかね。

二つのテーブルの他のフィールドも含めたもっと詳しいフィールド定義が不明です!!!!!
それぞれのテーブルに期待している『役割?、モノ』は何でしょう?!
2・3具体的なレコードの内容も示して欲しい。

フォーム(1)、フォーム(2) では分かりづらいので実際のフォーム名を示して貰いたいところ。
で、そのフォームのレコードソースは現状どうなっていますか。
回答者は傍にいて画面を見ているわけではありませんので、貴方が提示された「文字」だけが頼りです。
多分、簡単なことかと思われますが、誤解に基づく回答で解決されたように思えても
新たな難題が起こってくる場合もありえますので慎重になってしまいます。
おそらく前回の回答のメイン・サブフォーム間で社員番号で親子関係を設定すれば・・・
のような気がしますが。

私とimogasiさんのツープラトン攻撃でさぞ落ち込んでいるかと思います (^^ゞ
しかしながら、どこのサイトでも同様なレスがつくとおもいますよ。
さて
#2ではっきりと分かったこと
テーブルマスタ
ID主キー オートナンバー型
社員番号長整数型??インデックスの設定は??

テーブル入力情報
社員番号長整数型??インデックスの設定は??

テーブルマスタがマスターテーブルで、テーブル入力情報がトランザクションテーブル的な
感じですが、テーブル入力情報に社員ごとの詳しい情報が入っているのでしょうか...続きを読む


人気Q&Aランキング

おすすめ情報