Excel中VBA如何操作兩個表的資料

時間 2022-04-05 18:20:21

1樓:楊華山

public sub 複製資料()

dim sh1, sh2 as range

set sh1 = sheets("biao1").range("a1:a10000")

set sh2 = sheets("biao2").range("d1:d10000")

sheets("biao3").range("a1") = sheets("biao1").range("a1")

han = 0

for x = 1 to 100

sj = sheets("biao1").cells(x, 1)

if han > 0 then

for y = 1 to han

sj1 = sheets("biao3").cells(y, 1)

if sj1 = sj then

cf = true

exit for

else

cf = false

end if

next y

end if

if cf = false then

han = han + 1

sheets("biao3").cells(han, 1) = sheets("biao1").cells(x, 1)

end if

next x

han = han - 1

for x = 1 to 100

sj = sheets("biao2").cells(x, 1)

if han > 1 then

for y = 1 to han

sj1 = sheets("biao3").cells(y, 1)

if sj1 = sj then

cf = true

exit for

else

cf = false

end if

next y

end if

if cf = false then

han = han + 1

sheets("biao3").cells(han, 1) = sheets("biao2").cells(x, 1)

end if

next x

end sub

哈哈,學習了。usedrange.rows.count:表中有資料的最後一行的行號。

2樓:匿名使用者

思路:將表1表2當資料引入陣列1中

用陣列1中當每一個數和整個陣列對比如果只有一次相同則將這個數儲存在陣列2中

將陣列2全部寫入表3中

dim a

dim shuzu1()

dim shuzu2()

a=0for each dangqian in sheets("biao1").[a:a]

redim preserve shuzu1(a+1)

shuzu(a)= dangqian.value

a=a+1

next

for each dangqian in sheets("biao2").[a:a]

redim preserve shuzu1(a+1)

shuzu(a)= dangqian.value

a=a+1

next

for b= 0 to a

d=0for c=0 to a

if shuzu1(b)=shuzu1( c ) then

d=d+1

end if

next

if d=1 then

redim preserve shuzu2(b+1)

shuzu2(e)=shuzi1(b)

e=e+1

end if

next

for f= 0 to e

sheets("biao1").[a & e + 1] = shuzu2(e)

next

注意:未測試,如有錯誤請自己解決。

如何篩選兩個excel表中相同的資料

3樓:泡泡網

如何篩選兩個excel**間的相同資料?

4樓:匿名使用者

在sheet2的空白列,第一單元格(如e1)輸入公式:

=countif(sheet1!a:a,a1)

下拉複製公式,顯示結果為0的,說明沒有,否則就有。大於1的,說明sheet1中有多個。

5樓:匿名使用者

在sheet2中,隨便找個空白列,比如x

在x1中輸入 =lookup(a1,sheet1!a:a)然後下拉複製,直到sheet2第一列的的結尾這個公式的意思是,在sheet1的a列中,查詢sheet2的a1格的值,如果找到,則在x1中顯示a1的值。

否則顯示錯誤 #n/a。

下拉複製後,則相應查詢sheet2中的a2,a3,a4......的值。

6樓:三農曉雅

兩個**如何篩選相同資料

使用vba進行兩個**的資料複製

7樓:匿名使用者

加個按鈕

定義四個變數a,b,c,d as integera=sheet1.usedrange.rows.

count,b=sheet1.usedrange.colounms.

count.

c=sheet2.usedrange.rows.count,d=sheet2.usedrange.colounms.count.

然後用個迴圈

for h=1 to a

for i= 1 to b

sheet2.cells(c+a,d+b)=sheet1.cells(a,b)這樣不改變原來表二的資料,把表一的資料全部複製過來

8樓:不滅的信仰

worksheets("表一").copy after:=worksheets(worksheets.count)

worksheets(worksheets.count).name = format(now, "yyyymmddhhnnss")

9樓:魚木混豬喲

軟體版本:office2007

方法如下:

1.sheet1中有如下資料,利用vba複製到sheet2中:

2.alt+f11,輸入**如下:

3.f5執行**,返回excel中的sheet2就可以看到資料複製過來了:

10樓:

worksheets("sheet1").range("a1:c21").copy worksheets("sheet2").range("a21")

.copy之前的資料,是選取表名為sheet1的工作表的a1:21區域

把它們複製到工作表sheet2的a21單元格

貼上時,只需要知道貼上資料區域的左上角在哪,就可以了。

這段**我自己用過,絕對是可以用的

你可以把worksheets(「sheet1」),改為worksheets(變數名)

range裡的內容可以用("b" & row_min3 & ":" & "b" & row_max_2)之類的資料組合

這個方法用途很廣

11樓:匿名使用者

對內容進行復制,然後選擇「選擇性貼上」

如何把兩個檔案**用vba從另一個excel**匯入資料到這個**中?

12樓:枕風攬月

未說明清楚。兩個**是怎樣**?是相同**(複製貼上即可)?還是總分關係,最好能附上附件。

13樓:匿名使用者

發檔案,幫你寫。

[email protected]

14樓:九折臂

問題可能不算難題,可是理解你的這句話挺難的

excelvba如何把一個表裡的資料放入另一個表裡相應的單元格

15樓:匿名使用者

參考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檔案),那麼在公式計算完後,選擇全部公式區域,複製,右鍵選擇「值」粘帖以去除公式,但如此一來這些值就是靜態的數值不會再改變。

如何excel中篩選兩個表中相同的資料

如何篩選兩個excel 間的相同資料?如何excel中篩選兩個表中相同的資料,例如 我有一個班級的花名冊,有本年級全部學生的期末成績,想篩選這個班級全部學生的期末成績怎麼辦?工具 原料。excel方法 步驟。在sheet1相對應名字同一行的空白出輸入 if countif 然後切換到sheet2,選...

excel如何用if函式實現兩個條件中的為真時,就進行計算

裘娥戶宵 你的邏輯是 如果 碩導 輸出 200 如果 博導 輸出 350 否則輸出 0 完全正確。另外,豆號和括號應改為英文半形 if i4 碩導 200,if i4 博導 350,0 有問題再聯絡 你的a1單元格內輸入 星期六 星期日 時必須與公式中的一樣,不能有任何空格或者其他字元,如果顯示不正...

excel中如何把兩個不同sheet的資料做成圖表

萊昂納德 尤拉 先選中一個表中的資料將圖畫好,在圖上右鍵 源資料 系列,新增 會出現一個系列2,保證選中狀態,把旁邊值裡面的內容刪掉,再點右邊的小矩形按鈕,這時源資料視窗將被收起,有個小視窗會懸浮在表中,去另一張表選中另一個資料區域,再點那個按鈕,源資料視窗,確定就行了 你直接選中兩個表裡的兩組資料...