PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
23512 09/04/11 00:43:26 RE(6):OLEによるEXCELシートのコピーについて By class
23510 09/04/09 15:54:25 RE(5):OLEによるEXCELシートのコピーについて By Hakofugu
23509 09/04/09 14:20:15 RE(4):OLEによるEXCELシートのコピーについて By 前立腺肥大
23506 09/04/09 08:56:19 RE(3):OLEによるEXCELシートのコピーについて By Hakofugu
23505 09/04/08 16:00:55 RE(2):OLEによるEXCELシートのコピーについて By 前立腺肥大
23504 09/04/06 23:48:54 RE(1):OLEによるEXCELシートのコピーについて By class
23503 09/04/06 13:33:41 OLEによるEXCELシートのコピーについて By 前立腺肥大

カテゴリ:PowerBuilderの開発環境
日付:2009年04月11日 00:43 発信者:class
題名:RE(6):OLEによるEXCELシートのコピーについて

Hakofuguさん、おはようございます。

すみません、返信遅れました。

oleobject ole_workbook_fr, ole_workbook_to //ワークブック
oleobject ole_null

setnull(ole_null)

ole_workbook_fr.sheets(\"シート名\").copy( ole_null, ole_workbook_to.sheets(\"シート名\") )

でコピー先のシート(to)の後ろにコピー元のシート(from)がコピーされます。


>前立腺肥大さん、こんにちは。

>>いろいろありがとうございました。
>>
>>私なりの結論です。列幅はコピーできません。
>>そこでデータコピーの前に列幅だけコピーして,それからデータをコピーすることで
>>なんとか対応できました。
>>
>>サンプル
>>    //* 新規シート作成
>>    //* 列幅コピー
>>    FOR n = 1 TO excel_retu_max
>> ole_excel_saki.Application.ActiveSheet.Columns( n ).ColumnWidth = &
>>        ole_excel_moto.Application.ActiveSheet.Columns( n ).ColumnWidth
>>    NEXT
>>    //* データコピー
>>
>>以上
>>
>>
>既に結論を出されたようですが、こんなものを見つけました。
>コピー先が新しいブックではなく既存のブックにして
>最後のCells.Clearをコメントにすれば実現できるのでしょうか。
>応用できませんかねぇ。実験も検証もせずに垂れ流し状態で申し訳ありません....

>Sub シートの列幅と行高を新規ブックのシートへコピーする()
>    Worksheets(\"シート名\").Cells.Copy                \'※1 すべてのセルをコピー
>    Workbooks.Add                               \'ブックを新規作成
>        Range(\"A1\").PasteSpecial Paste:=xlPasteAll \'すべて貼り付ける
>        Cells.Clear                             \'すべてクリア
>End Sub



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows XP
DBMS Oracle Net8
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle10G
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.