VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2003/11/18(Tue) 14:42
投稿者しまりすよっしー
Eメール
URL
タイトルVBからExcel操作について

WindowsXP home VB6.0 OfficeXP で開発しています。
参照設定で、「Excel 10.0」「DAO 3.6」を追加
ターゲットは、Windows98SE Office2000 です。

目的:VBからExcelファイルのセルを読み込み、テキストファイルに書き出す。

方法1: [Excel・Word関係]を参考に、目的のプログラムを完成しました。
   しかし、ターゲットにセットアップして実行したところ、Workbooks.Open で落ちてしまいます。
   エラートラップはできず、「不正な処理を行なったので強制終了」されます
   詳細には、「ページ違反です」と書かれています。

Dim xlApp1    As Excel.Application
Dim xlBook1   As Excel.Workbook
Dim xlSheet1  As Excel.Worksheet

    Set xlApp1 = CreateObject("Excel.Application")
→  Set xlBook1 = xlApp1.Workbooks.Open(F_Name)  'オープンするファイル名
    Set xlSheet1 = xlBook1.Worksheets(1)     '最初のシートに書き込み

方法2:DAOでExcelデータを扱う方法を試してみました。
   これは、OpenDatabaseに失敗します。エラートラップはできます。
   ・Excel  8.0・・・3274 外部テーブルのフォーマットが正しくありません
   ・Excel 10.0・・・3170 インストール可能なISAMドライバが見つかりませんでした

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

→  Set DB = OpenDatabase(F_Name, False, False, "Excel 8.0;HDR=NO;")
    Set RS = DB.OpenRecordset(xlSheetName)

過去ログやGoogleで検索しましたが、解決方法が分かりません。
特に方法1は、開発用で動作確認ができただけに、残念でなりません。

注意する点や、解決の手がかりなどをご存知の方、ぜひアドバイスを下さい。
よろしくお願いいたします。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -