簡體   English   中英

根據不同工作表中的單元格值在一個工作表上刪除一行

[英]Deleting a row on one worksheet based on a cell value in a different sheet

在編碼方面,我非常環保,但是具有一些基本知識(至少是一些概念)。 但是,我對使用VBA不熟悉,我需要完成的任務似乎有點復雜。 我什至不確定是否完全有可能實現。

基本上,我有兩個工作表,一個工作表帶有打開的“案例”,一個工作表帶有“封閉的”案例。 已關閉的案例在特定列(D)中標記為“ x”。 我想要做的是有一個宏,該宏將在關閉的工作表中運行,並在D列中查找帶有“ x”的行。然后,我想根據A列中的值從打開的工作表中選擇行。名稱,並將完全匹配。 然后,我想從打開的表中刪除這些行。

因此,我的想法是我想要一種標記已關閉案例的方法,然后從未解決案例的主列表中清除相應的條目。 案例被拆分到不同的工作表上,但最后我有一個宏將其全部列出在主工作表上。 因此,找到帶有“ x”的閉合案例,將名稱與另一張紙上的名稱匹配,然后刪除該行。

這可行嗎?如果可以,我該怎么做?

預先感謝您的任何幫助!

編輯:

我已經意識到,因為我已經在創建主“封閉”工作表,所以甚至不需要搜索“ x”值。 我需要做的就是將關閉表中的名稱與打開表中的名稱匹配,然后從打開表中將它們刪除(如它們所在的行一樣)。

繼續尋找答案,因為這應該更簡單。

是的,聽起來確實可行。 我建議嘗試學習一些基本的VBA,將問題分解為小部分工作,然后在將整個過程結合在一起之前嘗試使所有這些工作正常進行。

因此,從一開始,您將需要找出如何遍歷列中的所有值並針對條件進行測試的方法,可以將該線程用作起點( vba遍歷列,如果有特定值,則遞增 )或谷歌它,看看你找到的教程。

您將需要決定如何存儲有關符合條件的記錄的數據(例如,構建數組或只是將數據臨時寫入另一張表)。 盡管寫另一張紙的效率可能不如您高,但您卻可以輕松查看輸出,這對調試很有幫助,特別是在您剛入門時。

然后,您將需要創建進一步的過程以打開其他工作簿,遍歷記錄並測試以查看它們是否在列表中,如果存在則將其刪除。

一步步走,然后提出嘗試時需要伴隨的問題。

在開始使用VBA時,我發現另一個有用的技巧。 如果您不確定執行某項操作的語法,找到此方法的一種方法是在記錄宏的同時手動執行等效的操作。 然后,您可以查看Excel自動創建的宏后面的代碼,有時您所需要做的就是替換絕對單元格引用,例如

range("A1").value

帶有相對引用(例如,相對於傳入的參數,相對於活動單元格或當前迭代通過循環等表示的行等)。

希望這可以幫助您入門。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM