[リストへもどる]
一括表示

投稿時間:2002/08/29(Thu) 21:43
投稿者名:旅人A
Eメール:
URL :
タイトル:
エクセルに表示
環境:Win98,VB5.0SP3,Office97

上記の環境でMsFlexGrid内のデータをエクセルに書き出す処理を行っています。
「Excel & Word関係」から「エクセルにデータを送りグラフを表示する」を活用させてもらって
ます。
ありがとうございます。

1|Dim xlsApp As Excel.Application
2|Dim xlsBook As Excel.Workbook
3|Dim xlsSheet As Excel.Worksheet
4|Dim StrRecBuff As String
5|Dim intCol As Integer
6|Dim intRow As Integer

7|    StrRecBuff = ""
8|    intCol = 0
9|    intRow = 0

10|    Set xlsApp = CreateObject("Excel.Application")
11|    Set xlsBook = xlsApp.Workbooks.Add
12|    Set xlsSheet = xlsBook.Worksheets(1)
    
13|    For intRow = 0 To DataCount - 1
14|        For intCol = 0 To 12
15|            StrRecBuff = MSFlexGrid1.TextMatrix(intRow, intCol)
16|            xlsSheet.Cells(intRow, intCol).Value = StrRecBuff
17|        Next intCol
18|    Next intRow

19|    xlsBook.Application.Visible = True
    
20|    xlsApp.Quit
21|    Set xlsSheet = Nothing
22|    Set xlsBook = Nothing
23|    Set xlsApp = Nothing

上記のようなコードでグリッドの内容をエクセルに吐き出す処理を行おうとしています。
しかし、一回目のループで「アプリケーション定義又は、オブジェクト定義のエラーです」
というエラーが発生しました。
調査したところ、このエラーはオブジェクト型などにうまくsetできていないと発生する模様です。
しかし、こちらのコードを活用させていただいたので、そんなことはないと思うのですが。。。

おそらく、環境の違いでうまくできていないと思うのですが、そういうことでしょうか?
もし、そのような結果だとしたら、上記の環境ではどのように変更を加えればよろしいでしょうか?
ご教授、どうぞよろしくお願い致します。

投稿時間:2002/08/29(Thu) 22:00
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: エクセルに表示
> しかし、こちらのコードを活用させていただいたので、そんなことはないと思うのですが。。。

サンプルのところに下記のように書いてあったと思うのですが

まず、VBからExcel及びWordを操作する時の注意事項を見て下さい

の中にこのように書いていますが、参照設定はされていますか?

1.当サンプルをご使用になる前に まず、プロジェクト→参照設定で Microsoft Excel  *.*
  ObjectLibrary にチェックを入れておいて下さい。


※ またまた、私の早とちりのようでした。ゴミレスですみません。(-_-;)

投稿時間:2002/08/29(Thu) 22:07
投稿者名:Say
Eメール:
URL :
タイトル:
Re: エクセルに表示
> 一回目のループで「アプリケーション定義又は、オブジェクト定義のエラーです」
0行とか0列とかに読み書きしようとすればそうなるでしょう。

投稿時間:2002/08/29(Thu) 22:12
投稿者名:旅人A
Eメール:
URL :
タイトル:
Re^2: エクセルに表示
> > 一回目のループで「アプリケーション定義又は、オブジェクト定義のエラーです」
> 0行とか0列とかに読み書きしようとすればそうなるでしょう。

花ちゃん、Sayさん、すばやいご回答ありがとうございます。
1.花ちゃんさんへ
MicroSoft Excel 8.0 Object Libraryいれてました
2.Sayさんへ
どうやら、Sayさんのご回答どうりのようです。
intRowとintColの初期値に+1したら正常に起動しました。

お二方、どうもありがとうございました。