• Skip to main content
  • Skip to header right navigation
  • Skip to site footer

My Online Training Hub

Learn Dashboards, Excel, Power BI, Power Query, Power Pivot

  • Courses
  • Pricing
    • Free Courses
    • Power BI Course
    • Excel Power Query Course
    • Power Pivot and DAX Course
    • Excel Dashboard Course
    • Excel PivotTable Course – Quick Start
    • Advanced Excel Formulas Course
    • Excel Expert Advanced Excel Training
    • Excel Tables Course
    • Excel, Word, Outlook
    • Financial Modelling Course
    • Excel PivotTable Course
    • Excel for Customer Service Professionals
    • Excel for Operations Management Course
    • Excel for Decision Making Under Uncertainty Course
    • Excel for Finance Course
    • Excel Analysis ToolPak Course
    • Multi-User Pricing
  • Resources
    • Free Downloads
    • Excel Functions Explained
    • Excel Formulas
    • Excel Add-ins
    • IF Function
      • Excel IF Statement Explained
      • Excel IF AND OR Functions
      • IF Formula Builder
    • Time & Dates in Excel
      • Excel Date & Time
      • Calculating Time in Excel
      • Excel Time Calculation Tricks
      • Excel Date and Time Formatting
    • Excel Keyboard Shortcuts
    • Excel Custom Number Format Guide
    • Pivot Tables Guide
    • VLOOKUP Guide
    • ALT Codes
    • Excel VBA & Macros
    • Excel User Forms
    • VBA String Functions
  • Members
    • Login
    • Password Reset
  • Blog
  • Excel Webinars
  • Excel Forum
    • Register as Forum Member

Change Conditional Formatting Rules based on User Input (vbyes/vbno) Response|VBA & Macros|Excel Forum|My Online Training Hub

You are here: Home / Change Conditional Formatting Rules based on User Input (vbyes/vbno) Response|VBA & Macros|Excel Forum|My Online Training Hub
Avatar
sp_LogInOut Log In sp_Registration Register
sp_Search Search
Advanced Search|Last Search Results
Search
Forum Scope




Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
sp_Search Search
sp_RankInfo
Lost password?
sp_CrumbsHome HomeExcel ForumVBA & MacrosChange Conditional Formatting Rules…
sp_PrintTopic sp_TopicIcon
Change Conditional Formatting Rules based on User Input (vbyes/vbno) Response
Avatar
Amanda Beyer
Member
Members
Level 0
Forum Posts: 11
Member Since:
September 1, 2021
sp_UserOfflineSmall Offline
1
March 5, 2022 - 2:03 am
sp_Permalink sp_Print

Hello,

I am wondering if it is possible to change how a table is conditionally formatted based on a user input response (vbyes or vbno)?

In the project I'm working on, when the user clicks on the Query button, they are then prompted to answer yes or no to the question: "Is this query family related?". If they select "Yes", I would like to find, highlight, and sort to the top all the rows that match the Brand and Size given in J5 and J7, which are populated automatically depending on the product selected from the dropdown in J4. 

If they select "No", I would like to find, highlight, and sort to the top only the exact product selected from the dropdown in J4. 

Currently, when the macro runs, it only finds, highlights, and sorts to the top the exact product, regardless whether the user chooses "Yes" or "No". 

The coding I have thus far is below and the file is attached. 

Sub SelectedItem()
'
' SelectedItem Macro

answer = MsgBox("Is this query product family related?", vbYesNo)
If answer = vbYes Then
'affect totals for family - bring all products in the family to the top (highlight)
MsgBox "Great! Calculating query for all products within this family."

ActiveWorkbook.Worksheets("Family Related").ListObjects("FamilyData").Sort. _
SortFields.Add(Range("FamilyData[[#All],[Size]]"), xlSortOnCellColor, _
xlAscending, , xlSortTextAsNumbers).SortOnValue.Color = RGB(255, 230, 153)

With ActiveWorkbook.Worksheets("Family Related").ListObjects("FamilyData").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

ActiveWorkbook.Worksheets("Family Related").ListObjects("FamilyData").Range.AutoFilter Field:=4, Criteria1 _
:=RGB(255, 230, 153), Operator:=xlFilterCellColor

With Sheets("Family Related")
'.Cells.EntireColumn.Hidden = False
.Columns("A").Hidden = True
.Columns("B").Hidden = True
.Columns("C").Hidden = True
.Columns("D").Hidden = True
.Columns("E").Hidden = True
End With

'Selection.EntireColumn.Hidden = True

Worksheets("Family Related").ListObjects("FamilyData").Range.SpecialCells(xlCellTypeVisible).Copy _
Destination:=Worksheets("Item Run Info").Range("AG16")

ActiveWorkbook.Worksheets("Item Run Info").ListObjects("ItemRunData").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Item Run Info").ListObjects("ItemRunData").Sort. _
SortFields.Add(Range("ItemRunData[[#All],[Item]]"), xlSortOnCellColor, _
xlAscending, , xlSortTextAsNumbers).SortOnValue.Color = RGB(255, 230, 153)
With ActiveWorkbook.Worksheets("Item Run Info").ListObjects("ItemRunData").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

ActiveWindow.Zoom = 70

ElseIf answer = vbNo Then
'Run below code and calculate as normal
MsgBox "Ok! Calculating query for selected product."
ActiveWorkbook.Worksheets("Item Run Info").ListObjects("ItemRunData").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Item Run Info").ListObjects("ItemRunData").Sort. _
SortFields.Add(Range("ItemRunData[[#All],[Item]]"), xlSortOnCellColor, _
xlAscending, , xlSortTextAsNumbers).SortOnValue.Color = RGB(255, 230, 153)
With ActiveWorkbook.Worksheets("Item Run Info").ListObjects("ItemRunData").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With

End If

End Sub

 

Any help/advice is greatly appreciated!

Thank you,

Amanda

Avatar
Philip Treacy
Admin
Level 10
Forum Posts: 1518
Member Since:
October 5, 2010
sp_UserOfflineSmall Offline
2
March 8, 2022 - 10:17 am
sp_Permalink sp_Print

Hi Amanda,

If you put columns for Brand and Size in the ItemRunData table, you can then sort/highlight the table based on those columns.

regards

Phil

sp_Feed
Go to top
Forum Timezone: Australia/Brisbane
Most Users Ever Online: 245
Currently Online:
Guest(s) 9
Currently Browsing this Page:
1 Guest(s)
Top Posters:
SunnyKow: 1432
Anders Sehlstedt: 871
Purfleet: 412
Frans Visser: 346
David_Ng: 306
lea cohen: 219
Jessica Stewart: 205
A.Maurizio: 202
Aye Mu: 201
jaryszek: 183
Newest Members:
stuart burge
Bruce Tang Nian
Scot C
Othman AL MUTAIRI
Misael Gutierrez Sr.
Attif Ihsan
Kieran Fee
Murat Hasanoglu
Brett Dryland
Saeed Aldousari
Forum Stats:
Groups: 3
Forums: 24
Topics: 6223
Posts: 27295

 

Member Stats:
Guest Posters: 49
Members: 31920
Moderators: 3
Admins: 4
Administrators: Mynda Treacy, Philip Treacy, Catalin Bombea, FT
Moderators: MOTH Support, Velouria, Riny van Eekelen
© Simple:Press —sp_Information

Sidebar

Blog Categories

  • Excel
  • Excel Charts
  • Excel Dashboard
  • Excel Formulas
  • Excel PivotTables
  • Excel Shortcuts
  • Excel VBA
  • General Tips
  • Online Training
  • Outlook
  • Power Apps
  • Power Automate
  • Power BI
  • Power Pivot
  • Power Query
microsoft mvp logo
trustpilot excellent rating
Secured by Sucuri Badge
MyOnlineTrainingHub on YouTube Mynda Treacy on Linked In Mynda Treacy on Instagram Mynda Treacy on Twitter Mynda Treacy on Pinterest MyOnlineTrainingHub on Facebook
 

Company

  • About My Online Training Hub
  • Disclosure Statement
  • Frequently Asked Questions
  • Guarantee
  • Privacy Policy
  • Terms & Conditions
  • Testimonials
  • Become an Affiliate

Support

  • Contact
  • Forum
  • Helpdesk - For Technical Issues

Copyright © 2023 · My Online Training Hub · All Rights Reserved. Microsoft and the Microsoft Office logo are trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries. Product names, logos, brands, and other trademarks featured or referred to within this website are the property of their respective trademark holders.