[[20070206111715]] 『VBAコード』(えくせる) ページの最後に飛ぶ

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

 

『VBAコード』(えくせる)XP・2003
ROUGEさんすみませんでした。

 Option Explicit
Private Sub Worksheet_Activate()
Dim lstR As Long, lstC As Long, x As Long
      '↓5行目よりクリア(実シートに合わせて下さい)
Range("5:" & Rows.Count).ClearContents
With Sheets("sheet1")
    lstR = .Cells(Rows.Count, "A").End(xlUp).Row
    lstC = .Cells(1, Columns.Count).End(xlToLeft).Column
    .Range(.Cells(1, 1), .Cells(lstR, lstC)).SpecialCells(xlCellTypeVisible).Copy _
     Range("A5") '←A5に貼り付け(実シートに合わせる)
End With
x = MsgBox("抽出された支店を印刷します", vbOKCancel)
If x = vbCancel Then Exit Sub
ActiveSheet.PrintOut
End Sub

というコードをkoheさんが作ってくれていたのですが、

@   '↓5行目よりクリア
  Range("5:" & Rows.Count).ClearContents がうまくクリアされません。全て転記&印刷されます。
Aシート1のA列を転記させたくない場合はどこをどう直せばいいのでしょうか?
Bシート2を選択するのではなくコマンドボタンで行う場合は、

 Private Sub Worksheet_Activate()をPrivate Sub CommandButton1_Click()に変更すればいいのでしょうか?


 1) Rows("5:" & Rows.Count).ClearContents

 2) .Range(.Cells(1,2),.Cells(lastR, lastC)).SpecialCells(12).Copy

 では?
 (seiya)

seiyaさんありがとうございます。コピーする時に罫線をコピーしない場合は、SpecialCells(12).CopyのSpecialを削除したらいいんですか?(えくせる)

 Pastespecial で xlValues にしてみては?
 (seiya)

Pastespecialってどこでしょうか?
(えくせる)

 .Range(.Cells(1,2),.Cells(lastR,lastC)).SpecialCells(12).Copy
 Range("a5").PasteSpecial xlValues

 (seiya)

seiyaさんたびたびありがとうございます。
また質問がありましたらよろしくお願いします。
(えくせる)

コメント返信:

[ 一覧(最新更新順) ]


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