'Tested only in Excel 2010 'Copy and paste this code to an inserted VBA code module 'Alt+F11 (opens the VBA code window '>Insert >Module 'Open the new module and paste the code below into it 'On Sheet2 in this workbook Assign a macro to the blue shape : 'Colour Ramp maker RGB.xlsx'!both 'On Sheet2 in this workbook Assign a macro to the green box: 'Colour Ramp maker RGB.xlsx'!Clear_Work_area Sub strip() ' Miner_Jeff Jan 8, 2016 Range("B2:B258").FormulaR1C1 = "=OR(RC[-1]<65,RC[-1]="""")" Range("d2:d258").FormulaR1C1 = "=HEX2DEC(MID(RC[-3],2,2))" Range("e2:e258").FormulaR1C1 = "=HEX2DEC(MID(RC[-4],4,2))" Range("f2:f258").FormulaR1C1 = "=HEX2DEC(MID(RC[-5],6,2))" Range("C2").FormulaR1C1 = "1" Range("C3").FormulaR1C1 = "2" Range("C2:C3").Select Selection.AutoFill Destination:=Range("C2:C300") Range("a2").Activate For i = 0 To 257 If IsError(ActiveCell.Offset(i, 0).Value * 1 < 65) = True Then ActiveCell.Offset(i, 0).Value = "#" & ActiveCell.Offset(i, 0).Value Else 'If ActiveCell.Offset(i, 0).Value * 1 < 65 Then If ActiveCell.Offset(i, 0).Value * 1 > 65 Then ActiveCell.Offset(i, 0).Value = "#" & ActiveCell.Offset(i, 0).Value Else ActiveCell.Offset(i, 0).Value = "" 'Else End If End If On Error Resume Next Next i ActiveWorkbook.Worksheets("Sheet2").AutoFilter.Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet2").AutoFilter.Sort.SortFields.Add Key:= _ Range("C1:C300"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption _ :=xlSortNormal With ActiveWorkbook.Worksheets("Sheet2").AutoFilter.Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub Sub color() ' Miner_Jeff Jan 8, 2016 Application.ScreenUpdating = False Range("g2").Activate For i = 1 To 65 r = ActiveCell.Offset(0, -3).Value g = ActiveCell.Offset(0, -2).Value b = ActiveCell.Offset(0, -1).Value ActiveCell.Interior.color = RGB(r, g, b) ActiveCell.Offset(1, 0).Activate Next i On Error Resume Next End Sub Sub remove_extraneous_lines() ' ' Miner_Jeff Jan 8, 2016 Columns("A:G").Select ActiveWorkbook.Worksheets("Sheet2").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet2").Sort.SortFields.Add Key:=Range( _ "A2:A258"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _ xlSortNormal With ActiveWorkbook.Worksheets("Sheet2").Sort .SetRange Range("A1:G300") .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Call nUM_SIGN ActiveSheet.Range("$A$1:$G$300").AutoFilter Field:=2, Criteria1:="=TRUE", _ Operator:=xlOr, Criteria2:="=" Range("A2:G300").Select Selection.SpecialCells(xlCellTypeVisible).Select Selection.ClearContents ActiveSheet.Range("$A$1:$G$257").AutoFilter Field:=2 'Sub ColorFunction() Range("A2:G300").Select For Each cell In Selection If cell.HasFormula Then 'With cell.Interior ' .ColorIndex = 6 ' .Pattern = xlSolid 'End With Else cell.Interior.ColorIndex = xlNone End If Next cell 'End Sub ActiveWorkbook.Worksheets("Sheet2").AutoFilter.Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet2").AutoFilter.Sort.SortFields.Add Key:= _ Range("C1:C300"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption _ :=xlSortNormal With ActiveWorkbook.Worksheets("Sheet2").AutoFilter.Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Call color Dim Ln As String Range("A301").Select Selection.End(xlUp).Select Ln = ActiveCell.Offset(1, 0).Address Range(Ln, "G300").Select 'Range("A14:G300").Select With Selection.Interior .Pattern = xlNone .TintAndShade = 0 .PatternTintAndShade = 0 End With ' Range("A301").Select ' Selection.End(xlUp).Select Range("B1:c64").ClearContents Range(Ln).Select End Sub Sub Step_1() 'Copy the information from the website 'Paste it into excel 'Clean it up ' Range("A2").Select ActiveSheet.PasteSpecial Format:="Text", Link:=False, DisplayAsIcon:= _ False End Sub Sub both() 'Step_2 'Blue rectangle object Application.ScreenUpdating = False Call Step_1 Call strip Call remove_extraneous_lines Columns("A:A").Select With Selection.Font .ColorIndex = xlAutomatic .TintAndShade = 0 End With End Sub Sub Clear_Work_area() 'Step_4 'Prep for new data to be pasted from clipboard Application.ScreenUpdating = False Rows("2:300").Select Selection.ClearContents With Selection.Interior .Pattern = xlNone .TintAndShade = 0 .PatternTintAndShade = 0 End With Range("A2").Select End Sub Sub nUM_SIGN() 'Step_3 Cells.Replace What:="# ", Replacement:="", LookAt:=xlWhole, SearchOrder _ :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False Cells.Replace What:="##", Replacement:="#", LookAt:=xlPart, SearchOrder _ :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False End Sub Sub color_check() 'rainbow arc shape ' Miner_Jeff Jan 8, 2016 Application.ScreenUpdating = False S_cell = ActiveCell.Address 'Range("g2").Activate 'Select the cell to right of the uppermost RGB values For i = 1 To 12 'change this 65 value to something else for more or less rows to be coloured. r = ActiveCell.Offset(0, -3).Value g = ActiveCell.Offset(0, -2).Value b = ActiveCell.Offset(0, -1).Value If r <> "" Or g <> "" Or b <> "" Then ActiveCell.Interior.color = RGB(r, g, b) ActiveCell.Offset(1, 0).Activate 'Next i Else ActiveCell.Offset(1, 0).Activate End If Next i Range(S_cell).Activate On Error Resume Next End Sub