Board logo

標題: [發問] VBA如何依指定2個條件成立後,再去做尋找與取代欄位內容 [打印本頁]

作者: o939120931    時間: 2014-9-18 23:18     標題: VBA如何依指定2個條件成立後,再去做尋找與取代欄位內容

請問一下:
 1. 巨集執行是依第一個工作表,A1欄位【底色】+【內容】,2個條件為依據再去做變動
 2.原只是想更改欄位數字1就好
 2. 但原來數字10的欄位,卻也會被更改成120的數值

是否有方法解決,謝謝∼
作者: o939120931    時間: 2014-9-18 23:20

補上巨集寫的內容:

----------------------------------------------------------------------------------------------------------------------------------

Public Sub 指定顏色與Bin別改成指定Bin_A1欄位輸入版()
     
    colorx = Sheet1.Range("A1").Interior.ColorIndex    '獲取單格A1背景色
   
    BinX = Sheet1.Range("A1")  '【原本的Bin別】宣示原本的Bin別

    BinY = Application.InputBox("【請問要改成什麼Bin別(數字)】", "請輸入要取而代之的Bin別(數字)", Type:=1)
    '【要取代的Bin別】宣示取代的Bin別
   
    For Each S In Sheets
   
      shtname = S.Name
   
      Sheets(shtname).Select  '切換【工作表】
      
      Application.FindFormat.Clear  '清除格式設定
        
      Application.FindFormat.Interior.ColorIndex = colorx  '尋找【欄位顏色】與【原本的Bin別】並取代成【指定Bin別】

      Cells.Replace What:=BinX, Replacement:=BinY, SearchFormat:=True
      
      Range("A1").Clear '徹底清除A1至D4單格區域的內容,包括格式
   
    Next

End Sub
作者: luhpro    時間: 2014-9-20 02:48

本帖最後由 luhpro 於 2014-9-20 02:49 編輯

回復 2# o939120931
改這行就好了: (部分文字符合就取代 改成 全部文字符合才取代)

Cells.Replace What:=BinX, Replacement:=BinY, LookAt:=xlWhole, SearchFormat:=True
作者: o939120931    時間: 2014-9-22 12:57

回復 3# luhpro


   謝謝 luhpro 大大你的回覆,終於可以了:loveliness:




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)