請教,如何使用Excel VBA刪除某列中單元格文字相同的行

2022-03-29 19:40:23 字數 5208 閱讀 9002

1樓:匿名使用者

從後面往前刪除就可以保持前面的位置。

private function myfunction9()dim i as long, j as longfor i = 1 to range("a65536").end(xlup).row '最大行數

for j = range("a65536").end(xlup).row to i + 1 step -1 '這裡的最大行數看似和上面一樣,但是其實它是不一樣的,i 的是固定的,j 的是不固定。

if range("a" & i).value = range("a" & j).value then rows(j).delete

next

next

end function

2樓:

資料---刪除重複項即可,自帶工具即可,不需要用vba來實現

excel vba ,excel表中a列有多個單元格值相同,則刪除單元格所在行,且只保留這些相同值

3樓:真真真白丁

親,是這個意思麼?

開啟你的excel檔案,按「alt+f11」開啟vba編輯視窗,然後在左側對應的sheet上雙擊,右側空白處貼上下面的**。關閉vba視窗。然後按「alt+f8」開啟巨集視窗,選擇剛插入的巨集,點選「執行」。

sub sc()

dim d

set d = createobject("scripting.dictionary")

dim i, r as long

r = cells(rows.count, "a").end(xlup).row

for i = r to 1 step -1

d(range("a" & i).value) = d(range("a" & i).value) + 1

if d(range("a" & i).value) > 1 then rows(i).delete

next

set d = nothing

end sub

4樓:百無生

假設資料區域a2:a20,則

1)b2=countif(a2:a$20,a2)

2)複製貼上到b2:b20

3)篩選b列所有》1的值,刪除掉

這樣應該就可以了,非要用vba的話,就按這個思路程式設計吧

1)用introw=range("a" & rows.count).end(xlup).row 方法獲取最大行號

2)dim rng as range, set rng = range("a2:a" & introw)

3)rng.formular1c1 = "=countif(rc[-1]:r" & introw & "c[-1],rc[-1])"

4)篩選(錄個巨集,改一下)

5)dim rng2 as range, 用set rng2 =rng.specialcells(xlcelltypevisible)方法獲取可見單元格區域,然後刪掉

請問如何使用vba刪除某一列單元格的中包含某特定字元所在的行

5樓:匿名使用者

點你想刪的那一行滑鼠右鍵就可以看到刪除

6樓:匿名使用者

sub 刪除e列包含@的行()

dim endh, i as long

endh = range("e65536").end(xlup).row

for i = endh to 1 step -1xx = range("e" & i).valueif instr(xx, "@") <> 0 then '@就是要找到指定的特定字元 可以改成你指定的其回

他字元range("e" & i).entirerow.delete 'e列是指定要查詢答的列.狂野改成你指定的其他列

end if

next

msgbox "已刪除e列包含@ 的行!"

end sub

excel 用vba如何刪除一列中的重複資料

7樓:匿名使用者

1、開啟要進行資料處理的**,

2、按alt+f11,進入vbe程式操作頁面,3、將滑鼠下移,右鍵彈出如圖,

4、選擇插入-模組,

5、滑鼠向右移動,將如下**寫入:

sub test()

dim d as object

dim r%, i%

dim arr

set d = createobject("scripting.dictionary")

with worksheets("sheet1")r = .cells(.rows.count, 3).end(xlup).row

arr = .range("c2:d" & r)for i = 1 to ubound(arr)d.removeall

for j = 1 to len(arr(i, 1))ch = mid(arr(i, 1), j, 1)d(ch) = ""

next

arr(i, 2) = join(d.keys, "")next

end with

end sub

6、按f5,執行**,後返回工作表,會發現單元格中的重複字元已經被去掉。

8樓:

對於刪除重複資料,excel 2007中有一個功能可以刪除,不需要vba程式設計。

方法:選中重複資料出現的單元格區域→「選單」欄→「資料」→「刪除重複項」→點選「確定」即可如圖:

9樓:宇哲

excel 自帶功能就有刪除重複項啊……

10樓:匿名使用者

option explicit

sub sample()

dim j as integer

dim src as string, dst as string

dim d

set d = createobject("scripting.dictionary")

src = "bg"

dst = "bh"

with activesheet

for j = 1 to .range(src & .rows.count).end(xlup).row

if not d.exists(trim(.range(src & j))) then d.add trim(.range(src & j)), ""

next

.range(dst & 1).resize(d.count) = worksheetfunction.transpose(d.keys)

end with

set d = nothing

end sub

如何利用vba刪除excel中a列含有「■」的單元格所在的行

11樓:匿名使用者

sub 刪除包含固定文字單元的行或列()

do until columns("a").find("■*") is nothing

columns("a").find("■*").entirerow.resize(3).delete

loop

end sub

12樓:匿名使用者

sub 刪除包含固定文字單元的行或列()

resize(3,1).entirerow.delete

next

end sub

13樓:匿名使用者

sub 刪除包含固定文字單元的行或列()

dim i as integer, j as integerwith range("a:a")

doi = .find(what:="■*").

rowj = .find(what:="■*").

columnrows(i & ":" & i + 2).deleteloop until .

find(what:="■*") is nothing

end with

end sub

這樣就能固定查詢a列的了,並且刪除三行

在excel中如何設定某單元格滿足條件後顯示設定的文字?

14樓:匿名使用者

1、建立excel,包含兩列資訊,分別為進度、**完成情況 ,2、進度列,插入樣例資料,

0.10.15

0.25

0.33

0.15

0.12

0.34

3、在f2單元格輸入公式,=if(e2<0.2,"**訂單下單中.....","**成功!"),則該單元格顯示內容為,"**訂單下單中....."

4、將該函式複製填充整個f列,則f8單元格公式,=if(e8<0.2,"**訂單下單中.....","**成功!"),單元格顯示內容為,"**成功!",

15樓:匿名使用者

不知道你所說的20%是什麼意思,應該是20吧假設變化數值的單元格是a1,顯示文字的單元格是a2在a2中輸入

=if(a1<20,"**訂單下單中.....","**成功!")

16樓:匿名使用者

excel的if()函式用以設定單元格滿足某條件與否分別對應的值,其語法如下:

if(logical_test, [value_if_true], [value_if_false])

如果指定條件的計算結果為 true,if 函式將返回某個值;

如果該條件的計算結果為 false,則返回另一個值。

例如,如果 a1 大於 10,公式 =if(a1>10,"大於 10","不大於 10") 將返回「大於 10」,如果 a1 小於等於 10,則返回「不大於 10」。

下面以excel 2010為例,進行演示:

1、判斷以下示例資料是否大於0.5

2、在c3單元格輸入:=if(c2>0.5,"是","否"),然後回車確認

3、滑鼠移到c3單元格右下角,當指標形狀變為十字時向右拖動,將公式應用到其他單元格,最終效果如下

17樓:匿名使用者

=if(a1<20%,"**訂單下單中……","**成功")

Excel VBA中如何使用split來分割內部含有不定空格的字串

1 首先開啟office excel軟體,接著開啟vba編輯介面。2 然後在單元格區域當中輸入一些內容。3 接著在vba編輯器中插入模組。4 在模組當中輸入如下 進行分割取線,然後執行。5 最後在單元格b2中輸入公式 division a1,column a a 然後右拉至d2,公式結果如圖所示。可...

excel vba如何優化,excel表格資料量很大時如何提高vba的效率

先按alt f11 再按f8進行除錯,哪一步不要,就刪除 excel 資料量很大時如何提高vba的效率 1 首先在電腦桌面中,滑鼠右鍵滑鼠,新建一個excel工作簿並開啟。2 建立一個簡單的 並輸入一些字串,比如衣服購買 如下圖所示。3 接著,滑鼠左鍵單擊 開發工具 選單標籤,並單擊vba按鈕,如下...

請教如何使用python的socket傳送二進位制資料

客戶端clt.py coding utf8 import socket host 192.168.1.101 port 12008 def send data data try sock clt socket.socket socket.af inet,socket.sock stream sock...