用vba怎樣從表選擇性貼上到另外表

2022-07-05 17:51:42 字數 4063 閱讀 5832

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...