有時在篩選后需要將其他區(qū)域中的連續(xù)行數(shù)據(jù)復(fù)制粘貼到篩選區(qū)域,,以替換篩選后的數(shù)據(jù)。由于篩選后的區(qū)域包含隱藏行,,因而無法直接進(jìn)行復(fù)制粘貼,,否則部分?jǐn)?shù)據(jù)會粘貼到隱藏行中。而如果復(fù)制后對選擇篩選區(qū)域用“定位→可見單元格”的方法選擇可見單元格,,再按“Ctrl+V”進(jìn)行粘貼,,Excel會提示“ ……Excel無法粘貼信息,原因是復(fù)制區(qū)域與粘貼區(qū)域形狀不同……”,。遇到這種情況,,可以用輔助列或VBA的方法來解決。 例如下圖所示,,左側(cè)的“Sheet1”表的A,、B兩列包含一些水果名稱及數(shù)量,現(xiàn)在需要用右側(cè)“Sheet2”表B1:B7區(qū)域中的數(shù)值(用紅色標(biāo)識)替換“Sheet1”表篩選“蘋果”后的數(shù)量,。 方法一:使用輔助列 這個方法是用排序法把需要替換的數(shù)據(jù)放在一起再進(jìn)行復(fù)制粘貼。即先添加一個“序號”輔助列,,在其中輸入數(shù)字序號,,再用另一個輔助列對篩選后的數(shù)據(jù)進(jìn)行標(biāo)記,,按第二個輔助列排序,再復(fù)制粘貼,,最后對“序號”列排序還原原數(shù)據(jù)的排列順序,。具體步驟如下: 1.先取消篩選,在“Sheet1”表的C2,、C3單元格分別輸入數(shù)字“1”,,“2”,選擇這兩個單元格后雙擊填充柄,,將序號填充到C列,。 2.篩選A列中的“蘋果”。在D列第二行的單元格中輸入公式: =ROW() 然后向下填充公式到D列的所有可見單元格,。 3.取消篩選,,按D列排序,將全部“蘋果”的數(shù)量排在一起,。 4.復(fù)制“Sheet2”表B1:B7數(shù)據(jù)粘貼到“Sheet1”表的B2:B8區(qū)域,。 5.按序號列排序,還原原數(shù)據(jù)的排列順序,。 最后刪除C,、D兩列,完成替換,。 方法二:VBA代碼 用下面的VBA代碼可直接把“Sheet2”表B列的數(shù)據(jù)粘貼到“Sheet1”表篩選后的區(qū)域,。假如“Sheet1”表的數(shù)據(jù)區(qū)域為 A1:B20,“Sheet2”表B列需要復(fù)制粘貼的數(shù)量為7個,,先對“Sheet1”表A列篩選“蘋果”,,然后按Alt+F11打開VBA編輯器,在代 碼窗口中輸入下列代碼并運行即可,。 Sub 粘貼時跳過隱藏行() |
|