| 
    
     |  | こんにちは よろしくお願いいたします 
 
 フィルタをかけたシートで表示行列だけ別シートにコピーすると
 下記test03の場合
 連番列のセル 数式 =SQ_CNT(D9)+OFFSET(E9,-1,0) が、値の#VALUE! となってしまいます
 元シートでは、ちゃんと連番が表示されています
 上記以外は不具合ありません
 
 test01-02は確認用の途中コードです わかりにくいと思い参考にのせました
 
 Q1 コードの修正で、連番表示(値)でコピーすることはできますか
 
 
 できなければ
 元シートをいったん値コピーしてから実行したいと思います
 
 
 Q2 SELECTしない記述の方法
 
 
 上記アドバイスよろしくお願いいたします
 
 
 Sub make_mit_functional_requirement()
 
 
 Sheets("moto").Columns("A:E").ClearContents
 
 
 'フィルタシートの指定範囲を別シートにコピー
 
 
 Sheets("saki").Select
 
 'test01 Copy → Paste
 '通常選択(フィルタ時でも非表示行も選択する)
 '##セル数式’=SQ_CNT(D9)+OFFSET(E9,-1,0)時、数式となる
 '  Sheets("saki").Range(Cells(5, 1), Cells(Sheets("saki").Cells. _
 SpecialCells(xlLastCell).Row, 6)).Select
 '  Selection.Copy
 
 '  Sheets("moto").Select
 '  Sheets("moto").Range("A14").Select
 '  ActiveSheet.Paste
 
 
 'test02 Copy → PasteSpecial
 '通常選択(フィルタ時でも非表示行も選択する)
 '##数式時 #VALUE! となる  test01では#VALUE!とは表示されないのはなぜ?
 '  Sheets("saki").Range(Cells(5, 1), Cells(Sheets("saki").Cells. _
 SpecialCells(xlLastCell).Row, 6)).Copy
 
 '  Sheets("moto").Select
 '  Sheets("moto").Range("A14").Select
 '  Selection.PasteSpecial Paste:=xlValues
 
 
 'test03 SpecialCells Copy → Past
 
 '表示行のみ選択(フィルタ時)
 '数式時 #VALUE! となる =SQ_CNT(D9)+OFFSET(E9,-1,0)
 Sheets("saki").Range(Cells(5, 1), Cells(Sheets("saki").Cells. _
 SpecialCells(xlLastCell).Row, 6)).SpecialCells(xlCellTypeVisible).Copy
 
 Sheets("moto").Select
 Sheets("moto").Range("A14").Select
 ActiveSheet.Paste
 
 Application.CutCopyMode = False
 
 
 End Sub
 
 |  |