返回列表 上一主題 發帖

[發問] vba特定格式刪除

回復 9# man65boy
如果你想要將 A4 的儲存格文字 (物品編號) 改為 (日期),
理論上是 OK 的。
但是在你的 A3 欄位的值是 Rng(1) = "           製表日期: " : Range/Range
程式在最後一次執行 Set Rng(1) = Sh.Cells.FindNext(Rng(1)) 時,
回頭搜尋 (FindNext()) 卻抓到了A3 欄位的值,而非 A4 的儲存格文字 (日期)。

接著 程式繼續往下執行到
Set Rng(2) = Union(Rng(2), Rng(1).Offset(-3).Resize(4).EntireRow)
在 Rng(1).Offset(-3) 便產出了錯誤訊息 ('1004');因為此時
Rng(1).Address(0, 0) = "A3" : String, 而 Rng(1).Offset(-3) 的位址為 A0,
已經超出表單的範圍。

TOP

回復 11# c_c_lai
8#的程式碼 修改 搜尋完全一樣的字串
   
  1. Set Rng(1) = Sh.Cells.Find(Sh.Range("a4"), Sh.Range("a4"), LookAt:=xlWhole)
  2. ' 加上這參數 , XlLookAt 常數之一:xlWhole 或 xlPart。
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 9# man65boy
就如 GBKEE 大大的提示 (#12) 做修正,
便 OK 了!

TOP

回復 13# c_c_lai

謝謝大大和版主的回覆,那如果改用固定列的刪除法要如何用,意思是,工作表上的1~3列刪除,41~45列刪除,82~86,123~127刪除......以此類推,(資料我看大致上除了第一頁的資料是37列外,其餘都是36列)
然後再把資造整合在一起,這樣可能比較單純,謝謝老師們幫忙,附檔 刪除特定格式cc.rar (22.94 KB)

TOP

回復 14# man65boy
你認為處理的思考方向 OK 的話,就以你的想法去達成它。
論壇只是一個釋疑與學習的場合,每個人均有自己的思考方向,
只要是好的詮釋、或是更佳的技巧處理都是值得我們學習的。

TOP

回復 14# man65boy
試試看
  1. Sub Ex()
  2.     Dim Sh As Worksheet, Rng As Range
  3.     On Error Resume Next  '程式有錯誤不理會,繼續執行下去
  4.     For Each Sh In Worksheets
  5.         Set Rng = Sh.UsedRange.Columns("I:I").Offset(4)  'Columns("I:I") 工作表資料的最後一欄 ,Offset(4) 資料第五列開始
  6.         Rng.MergeCells = False                                          '取消合併的儲存格
  7.         Rng.Value = Rng.Value                                         '儲存格的格式設為 數字
  8.         Set Rng = Union(Rng.SpecialCells(xlCellTypeBlanks), Rng.SpecialCells(xlCellTypeConstants, xlTextValues))
  9.          'xlCellTypeBlanks 空白的儲存格, SpecialCells(xlCellTypeConstants, xlTextValues)  '文字的儲存格
  10.          'UsedRange.Columns("I:I").Offset(4) 儲存格中 沒有 [空白的],[文字的] 程式會錯誤
  11.         If Err = 0 Then Rng.EntireRow.Delete
  12.         If Err > 0 Then Err.Clear
  13.     Next
  14. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 15# c_c_lai

謝謝c_c_lai大大的幫忙,給小弟有更多可應用的範本與方法,
c_c_lai大大說的:每個人均有自己的思考方向,
只要是好的詮釋、或是更佳的技巧處理都是值得我們學習的。
所言甚是阿,牢記在心底。謝謝你!!!

TOP

回復 16# GBKEE

感謝GBKEE板大的回答,非常的符合表單的需求,因為原始檔牽涉到物件機密,致使不敢上傳真正的問題格式,真的只能稍佳修改上傳發問,但沒想到問題不是普通雜,經2位老師的幫忙, 也給小弟有更多的學習知識,真的感謝你們,感恩!

TOP

        靜思自在 : 口說好話、心想好意、身行好事。
返回列表 上一主題