2016-03-04 81 views
0

我希望有人可以提供幫助 - 我已經把頭髮拉出了幾個小時。所以我試圖根據單元格中文本的顏色向單元格添加一個變量圖形。例如: enter image description here在Excel 2010中根據單元格文本顏色執行方程式

因此,例如如果它是一個超級輪胎,1.9需要添加到粉紅色的時間。在D2 83.229將變成85.129。如果它是超級(紅色),則需要將1.4添加到D18。

我相信有可能是通過名稱管理的一種方式,但無法加入點,使其工作。

+0

AFAIK,這隻能通過VBA。也許UDF會起作用。但是,如果你想要VBA,你必須顯示你已經嘗試過的代碼以及它不工作的地方。 –

+0

您是否認爲在附加列中對相關顏色進行編號然後使用查找會更容易?所以紫色= 1,紅色= 2等...... – user1721451

+0

可能......並且避免vba的好方法。 –

回答

0

看起來最簡單的方法就是做一個vlookup。更多病態的好奇心。

0

鑑於你樣品佈局中,每個字體顏色可以從「關鍵」或圖例經由AutoFilter method拾取並施加到數據塊。如果在應用顏色過濾器後可以找到可見數字,則可以將與該顏色關聯的數量添加到「時間」列。

Sub coloredTyres() 
    Dim clr As Long, rng As Variant 

    With Worksheets("Tyres") 
     If .AutoFilterMode Then .AutoFilterMode = False 
     With .Cells(1, 1).CurrentRegion 
      For Each rng In .Parent.Range(.Cells(2, "H"), .Cells(2, "H").End(xlToRight)) 
       .AutoFilter Field:=3, Criteria1:=rng.Font.Color, _ 
          Operator:=xlFilterFontColor 
       If CBool(Application.Subtotal(102, .Columns(4))) Then 
        rng.Offset(1, 0).Copy 
        With Intersect(.Columns(4), _ 
            .SpecialCells(xlCellTypeVisible), _ 
            .SpecialCells(xlCellTypeConstants, xlNumbers)) 
         .PasteSpecial Paste:=xlValues, operation:=xlPasteSpecialOperationAdd 
        End With 
       End If 
       .AutoFilter Field:=3 
      Next rng 
     End With 
     If .AutoFilterMode Then .AutoFilterMode = False 
    End With 
End Sub 

我已經對一些隨機數據進行了測試,但我並未打算重新輸入整個樣本圖像。

相關問題