[[20160209211036]] 『シートのコピー』(ちぃ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シートのコピー』(ちぃ)

いつもお世話になっております。

シートのコピーについて教えて下さい。
”⚫⚫平成28年★月度”(⚫は担当者名、★は日付)というシートがいくつかと
”合計表”というシートがあり、
毎月最新の月度のシートと、合計表、の2シートだけを他者に送信する為、
一旦名前をつけて保存してます。

そこで、その作業をマクロにしたいのですが、
シート名が毎回変わるので、
アクティブシート(作成したい月度の”⚫⚫平成28年★月度”シート)と
”合計表”をコピーして値と書式のみ貼り付けという
処理をしたいのですが、可能でしょうか?

一部indirect関数をつかってるので、値と書式の貼り付けは必要です。

もし他に良い方法等あればアドバイス頂けると助かります!

< 使用 Excel:Excel2013、使用 OS:Windows7 >


 シートをコピーして新規ブックをつくることにより書式は、そのまま継承されますので
 あとは、値変換のみを行えばよろしいのでは?

 Sub Sample()
    Dim sh As Worksheet

    Sheets(Array("合計表", ActiveSheet.Name)).Copy

    For Each sh In ActiveWorkbook.Worksheets
        sh.UsedRange.Value = sh.UsedRange.Value
    Next

    'これで 合計表シートとアクティブシートの2枚だけの新規ブックが生成されますので、それ(ActiveWorkbook)を適切な名前で保存してください。

 End Sub

(β) 2016/02/09(火) 21:39


β様

ありがとうございます!
教えていただいたコードで、無事完成しました。

ただ保存されたデータを開くと、「修復しますか?」というエラーがでます。
入力規則が入ってるので、そのエラーのようですが、
それをなくすにはどうしたらいいでしょうか??
(ちぃ) 2016/02/10(水) 10:06


 保存しているところのコードをアップいただけますか?

(β) 2016/02/10(水) 10:08


β様

すみません、
Cells.Validation.Delete

で入力規則を消したらエラーが消えました。

実はブックの保存までせず

Application.Dialogs(xlDialogSaveAs).Show

にして、保存する手前でコードは止めてます。
まだ保存先に変動があるかもなので。。。

いつもありがとうございます!

(ちぃ) 2016/02/10(水) 10:38


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.