Requirement:
The user requires a code that colour's tabs red if they contain a number >0 and colour's the other tabs that contain a number = 0 green. Example: Richard 1 = Red, Paul 0 = Green, Peter 5 = Red, Ozgrid 0 = green.
The user has3 tabs (all named) that I wish NOT to colour.
All of the tabs that the user would like coloured would have been created automatically by VBA form a pivot table.
Solution:
Sub TabNameV2() ' Names each newly created tab with the SCPS name Dim ws As Worksheet Application.Calculation = xlCalculationManual Application.ScreenUpdating = False Worksheets("Summary").Activate For Each ws In Worksheets On Error Resume Next If Len(ws.Range("Z2")) > 0 Then ws.Name = Replace(ws.Range("Z2").Value, "/", "-") ' Adjust Tab Color : 0 = Green Else Red If InStr(1, ws.Name, "0") > 0 Then ws.Tab.Color = vbGreen Else ws.Tab.Color = vbRed End If End If On Error GoTo 0 If ws.Name <> Replace(ws.Range("Z2").Value, "/", "-") Then MsgBox ws.Name & " Was Not renamed, the suggested name was invalid" End If Next ws Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End Sub
Obtained from the OzGrid Help Forum.
Solution provided by Carim.
See also: Index to Excel VBA Code and Index to Excel Freebies and Lesson 1 - Excel Fundamentals and Index to how to… providing a range of solutions and Index to new resources and reference sheets
See also:
How to use VBA code to insert a row at the top of a table |
How to skip VBA Code if table filter returns nothing |
How to set dynamic dates for pivot table grouping |
How to marge tabs from different excel macro xlsm files into one file |
How to use VBA code to list specific tab names |
Click here to visit our Free 24/7 Excel/VBA Help Forum where there are thousands of posts you can get information from, or you can join the Forum and post your own questions.