1樓:匿名使用者
sub 選擇性貼上1() '將e4單元格的公式複製,並選擇性貼上到e4單元格
range("a4").copy
range("e4").pastespecial paste:=xlpastevalues
end sub
sub 選擇性貼上2() '將c4單元格的值與e2:e4單元格的和貼上到e2:e4
range("c4").copy
range("e2:e4").pastespecial paste:=xlpastevalues, operation:=xladd
end sub
sub 選擇性貼上3() '將a2:a6單元格的內容轉置貼上到以d8開始的單元格區域
range("a2:b6").copy
range("d8").pastespecial transpose:=true
end sub
2樓:魚木混豬喲
vba中用copy複製後,用pastespecial方法可以選擇性貼上
例項**如下:
range("a1:b2").copy
range("c1").pastespecial paste:=xlpasteformulas '選擇性貼上公式
range("e1").pastespecial paste:=xlpastevalues '選擇貼上數值
pastespecial可選擇的貼上方式:
xlpasteall 預設值
xlpasteallexceptbordersxlpastecolumnwidths
xlpastecomments
xlpasteformats
xlpasteformulas
xlpasteformulasandnumberformatsxlpastevalidation
xlpastevalues
xlpastevaluesandnumberformats
3樓:姓王的
錄製巨集,一看就明白了。
使用excel vba 複製一個工作表中指定的列中的資料,貼上到另一個工作表的指定列的最下方。
4樓:匿名使用者
sub test()
dim s, t
dim i as integer
dim rs as integer
s = array(1, 5, 8)
t = array(2, 6, 7)
sheets("目標表").select
with sheets("原始表")
for i = 0 to ubound(s)rs = .cells(65536, s(i)).end(xlup).row - 1
cells(65536, t(i)).end(xlup).offset(1, 0).
resize(rs, 1).value = .cells(2, s(i)).
resize(rs, 1).value
next
end with
end sub
5樓:匿名使用者
把表發我郵箱,舉例說清楚目的與要求,[email protected]
excel vba如何實現多個工作表的選擇性貼上數值
6樓:朱仕平
sub macro3()
dim i as range
for sh = 1 to sheets.countfor each i in sheets(sh).usedrange.
specialcells(xlcelltypeformulas, 23)
if i.formula like "*" then i = i + 1
next
next
end sub
試試這個
excel vba將一個表的內容複製到另幾個表
7樓:【名臣
sub 複製()
ar =
range("a4:d" & [a65536].end(3).row).copy
for i = 1 to 5
sheets(ar(i)).range("a4").pastespecial
next
end sub
8樓:
sub copy5()
dim a(1 to 5)
a(1) = "計算表"
a(2) = "驗證表"
a(3) = "查詢表"
a(4) = "計量表"
a(5) = "設計表"
for i = 1 to 45
sheets(1).range("a4:r" & [a65535].end(xlup).row).copy sheets(a(i)).range ("a4")
next
end sub
9樓:
請問你的這個工作簿一共包含多少個工作表,原資料表又是第幾個表呢?
vba 如何批量將單元格複製到另一個工作表中
10樓:匿名使用者
把你要保留的工作表的名字放到陣列裡,再把陣列放到字典裡,然後遍歷工作表,判斷工作表名是否在字典裡存在,如果存在,把工作表移動到新工作簿裡然後另存為
不想用字典和陣列的話,也可以把工作表名列一列,用vba呼叫countif函式判斷
工作表移動到新工作簿裡然後另存為的**錄製巨集可以得到
給你個最實用的**吧 用單元格已使用區域copy到新的表中用下面**要指明第左上解單元格要複製表的區域.copy destination:=接收復製表的左上角單元格如把sheet1中的已使用區域複製到sheet2中 以sheet2的a1單元格為起來貼上進
不用vba就可以實現複製。
1、同時開啟兩個工作簿。
2、滑鼠右鍵點選要移動的工作表,選擇移動或複製。
3、在移動或複製工作表彙總,選擇另一個工作簿。
4、選擇移動到最後,然後勾選建立副本,點選確定。
5、點選確定後,就可以複製過去了。
參考vlookup公式的用法,圖例是要對d2輸入對應的數字,解釋=vlookup(a:a,h:k,2,0)的含義:
vlookup()接收4個引數,圖中分別是a:a,h:k,2,0。
a:a代表以第一列為要查詢的值,h:k代表搜尋的範圍是h列到k列,2代表取出h:
k列中的第二列(左起),因為d2這個單元格是要找採購總量,那麼h:k列的第二列就是我們要的,所以是2,0是一個參數列示匹配的方法,完全匹配就用0。
那麼e2,f2的公式就分別是=vlookup(a:a,h:k,3,0)和=vlookup(a:
a,h:k,4,0),我們只要修改第三個引數就好了(可以看到找不到的品類是#n/a因為沒有對應的結果)。
對於你的情況,不同頁或者不同工作表,引用不如在同一頁這麼簡單,前2個引數你可以手動選擇,會自動填上,填好一個按逗號(英文半形)。
如果上面2個圖,不在一個工作簿(也就是不是同一個excel檔案),那麼在公式計算完後,選擇全部公式區域,複製,右鍵選擇「值」粘帖以去除公式,但如此一來這些值就是靜態的數值不會再改變。
11樓:匿名使用者
給你個最實用的**吧 用單元格已使用區域copy到新的表中
用下面**要指明第左上解單元格
要複製表的區域.copy destination:=接收復製表的左上角單元格
如把sheet1中的已使用區域複製到sheet2中 以sheet2的a1單元格為起來貼上進sheet2
dim myrange1 as range
dim myrange2 as range
set myrange1 = sheets1.usedrange
set myrange2 = sheets2.range("a1")
myrange1.copy destination:=myrange2
刪除行得用迴圈 加 條件加行刪除就ok了
vba中怎樣表示sheet,vba中怎樣表示一個sheet?
vba中 用sheet1,2,3來表示是不保險的,如果將sheet1刪除再建立一個表單後,新表單預設叫sheet4,再在vba中呼叫sheet1就會出錯。請用下面過程選中需要表單 sub 遍歷工作表 dim a as string,n as integerfor n 1 to worksheets....
excel用VBA寫從1加到100的程式
你好,很高興為你回答這個問題。樓上的回答也很好,這裡我提供另一種思路,各位大佬自行比較。sub fillingexample dim i for i 1 to 100 cells i,1 value 1 i 2 i next end sub sub sumexample dim i dim resu...
Excel怎樣用VBA提取中文字元
gb2312範圍 0xa1a1 0xfefe gbk範圍 0x8140 0xfefe public function hibyte byval word as integer as byte end function public function lobyte byval word as inte...