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月09日 15:54 発信者:Hakofugu
題名:RE(5):OLEによるEXCELシートのコピーについて

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

>いろいろありがとうございました。

>私なりの結論です。列幅はコピーできません。
>そこでデータコピーの前に列幅だけコピーして,それからデータをコピーすることで
>なんとか対応できました。

>サンプル
>    //* 新規シート作成
>    //* 列幅コピー
>    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.