y3b5の備忘録

忘れそうなお仕事メモを書くようにしています。

Excel2007でのマクロ変更点

今までExcel2003で作っていたExcelマクロで、Excel2007にバージョンアップしたことで動作が変わった点があった。

・Excel2003では、非表示シートをコピーしたら、コピー後のシートは非表示属性が解除されていたが、Excel2007では非表示のまま
(対策) コピー対象のシートを一時的に表示してあげてコピーする


今まで、

    Sheets(strSheet).Copy after:=Sheets(Sheets.Count)
    処理・・・


関数を1つ作成

Public Sub SheetCopy(strSheet As String)

    Sheets(strSheet).Visible = xlSheetVisible
    Sheets(strSheet).Copy after:=Sheets(Sheets.Count)
    Sheets(strSheet).Visible = xlSheetHidden

End Sub

これから

    Call SheetCopy(strSheet)
    処理・・・

とりあえず見つかったのは1個だけ