ここから本文です

コンパイルエラー「ユーザ定義型は定義されていません」と表示されてしまいます。...

ki_********さん

2010/11/917:08:53

コンパイルエラー「ユーザ定義型は定義されていません」と表示されてしまいます。どこがまずいのでしょうか?宜しくお願い致します。

Public Sub GPrcImportMultiSheet()
Const csWsRng As String = "A1:U500" '(例 A1:C100)
Const csTblName As String = "t_10M_yokota" '(例 TblTemp)
Const csWbPath As String = "\\Mainserver\FW_Server\確認・督促業務\強化科目\2010.11M:横田さん.xls" '(例 C:\Windows\Excel)
Dim voXlApp As Excel.Application
Dim voXlWb As Excel.Workbook
Dim voXlWs As Excel.Worksheet

Set voXlApp = New Excel.Application
voXlApp.Visible = True
Set voXlWb = voXlApp.Workbooks.Open(FileName:=csWbPath & "\AAA.xls", _
ReadOnly:=True)

For Each voXlWs In voXlWb.Worksheets
DoCmd.TransferSpreadsheet TransferType:=acImport, _
SpreadsheetType:=acSpreadsheetTypeExcel9, _
TableName:=csTblName, _
FileName:=voXlWb.FullName, _
HasFieldNames:=True, _
Range:=voXlWs.Name & "!" & csWsRng
Next voXlWs

voXlWb.Close
voXlApp.Quit
Set voXlWs = Nothing
Set voXlWb = Nothing
Set voXlApp = Nothing
End Sub

閲覧数:
63,380
回答数:
1

違反報告

ベストアンサーに選ばれた回答

mi_********さん

2010/11/918:29:40

> コンパイルエラー「ユーザ定義型は定義されていません」と表示されてしまいます。

そのエラーが出るのは、コードに問題があるのではなく、必要なライブライに対して参照設定がされていないからです。

VBエディタのメニューバーの[ツール]→[参照設定]を選択します。
[参照設定]ダイアログが表示されたら、「参照可能なライブラリファイル」の中を探して

Microsoft Excel 14.0 Object Library

というのを探し、左側の□をクリックしてチェックを付けます。
その後、[OK]をクリックしてダイアログを閉じ、再度コンパイルをしてみてください。

なお、ライブラリファイルの名称の 14.0 の部分は、Access(もしくは Office)のバージョンによって異なります。
上記の名称は、Access 2010 の場合の例です。

質問した人からのコメント

2010/11/10 02:43:43

成功 ありがとうございました。そのとおり設定したら、エラー回避できました。

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる