[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/11/23(Wed) 02:16
投稿者名:ロック
URL :
タイトル:
MSFlexGridのデータ保存
VB6をはじめて1ヶ月位の者ですが、よろしくお願いします。

Excelからデータを読んでMSFlexGridに表示して、編集し、
その後Excelに書き込むという処理をしています。
表示には「Excel用ファイルをMSFlexGridに表示する(DAOを利用)」
を使わせて頂いてます。書き込みは下記のコードです。

Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
  
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(App.Path & "\Hozon.xls")
Set xlSheet = xlBook.Worksheets("Sheet1")
  
Dim DataArray(1 To 140, 1 To 5) As Variant
Dim r As Integer
For r = 1 To 140
    DataArray(r, 1) = FGrid1.TextMatrix(r, 0)
    DataArray(r, 2) = FGrid1.TextMatrix(r, 1)
    DataArray(r, 3) = FGrid1.TextMatrix(r, 2)
    DataArray(r, 4) = FGrid1.TextMatrix(r, 3)
    DataArray(r, 5) = FGrid1.TextMatrix(r, 4)
Next
  
xlSheet.Range("A2").Resize(140, 5).Value = DataArray

xlBook.SaveAs App.Path & "\Hozon.xls"
xlApp.Quit
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing

MSFlexGrid(左端固定列なし)の5列140行をエクセルシートのA2始点
5列140行に保存してます。
この方法ですと、読み込み時に比べて時間がかかってしいます。
読み込み時と同じくらいの時間で書き込む方法を教えて下さい。
宜しくおねがいします。

投稿時間:2005/11/23(Wed) 08:01
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re: MSFlexGridのデータ保存
MSFlexGrid のデータを Clipプロパティ を使って取得して、クリップボード経由で
Exel に貼り付けて見て下さい。

hhttp://tinyurl.com/cwkx5


> Excelからデータを読んでMSFlexGridに表示して、編集し、
> その後Excelに書き込むという処理をしています。

なぜ、このような仕様にされているのですか? 初めからExcel上で編集した方がいいのでは。

投稿時間:2005/11/23(Wed) 15:27
投稿者名:ロック
URL :
タイトル:
Re^2: MSFlexGridのデータ保存
レス、ありがとうございます。宜しくお願いします。

> MSFlexGrid のデータを Clipプロパティ を使って取得して、クリップボード経由で
> Exel に貼り付けて見て下さい。
>
> hhttp://tinyurl.com/cwkx5

自分なりに色々調べてやってみたんですが、理解&知識不足で上手くいきません。
実はプログラムを本格的にやりはじめて、まだ1ヶ月位なもので、色々勉強しながら
やってます。
出来れば具体例で教えてもらえると有難いです。
宜しくお願いします。

投稿時間:2005/11/23(Wed) 16:00
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^3: MSFlexGridのデータ保存
> 出来れば具体例で教えてもらえると有難いです。
> 宜しくお願いします。

リンク先を見なかったのですか?(特に5番目あたり)
又、CLip をヘルプで見れば使用例も載っていたはず。