Making validation arrows INvisible

perrush

New Member
Joined
Dec 18, 2017
Messages
17
Hi,

I have a sheet where only a few cells can be altered. The sheet can be sorted and filtered by macro's. This works fine. But I do find the validation arrows confusing for the users. This part of the sheet is protected so they can't filter by the arrows (they need to use the macro's behind the buttons). Is there a way to make the arrows invisible ?

image.php
 

Excel Facts

What do {} around a formula in the formula bar mean?
{Formula} means the formula was entered using Ctrl+Shift+Enter signifying an old-style array formula.
Something like
Code:
Sub HideFilter()
Dim i As Long
For i = 1 To 10
   Range("A1:J1").AutoFilter i, , , , xlHidden
Next i
Range("A1:J1").AutoFilter 2, "No"
End Sub
 
Upvote 0
Hi,

sorry for my ignorance but could you explain it a little more.

The filtered headers are on row 7 from A till AG.
 
Upvote 0
Something like
Code:
Sub HideFilter()
Dim i As Long
For i = 1 To 10
   Range("A1:J1").AutoFilter i, , , , xlHidden
Next i
Range("A1:J1").AutoFilter 2, "No"
End Sub
You can do that without using a loop. If your column range is fixed and unchanging, then this works...
Code:
[table="width: 500"]
[tr]
	[td]Range("A1:J1").AutoFilter [COLUMN(A:J)], , , , False[/td]
[/tr]
[/table]
If the range is not "set in stone", then you could do something like this...
Code:
[table="width: 500"]
[tr]
	[td]Dim Rng As Range
Set Rng = Range("A1", Cells(1, Columns.Count).End(xlToLeft))
Rng.AutoFilter Evaluate("COLUMN(" & Rng.EntireColumn.Address(0, 0) & ")"), , , , False[/td]
[/tr]
[/table]
 
Upvote 0
Ok
Code:
Sub HideFilter()
Dim i As Long
For i = 1 To 33
   Range("A7:AG7").AutoFilter i, , , , xlHidden
Next i
Range("A7:AG7").AutoFilter 2, "No"
End Sub
This will hide all the arrows & then filter col B on "No"
The first part will not only remove the arrows, but also any active filter, so you will need to reset the filter afterwards
 
Upvote 0
oke, now (I think) I understand. I need to adjust the current filters to this format where the bottom part is the filter.

Still need to se if I can pull this off, but TIA
 
Last edited:
Upvote 0
If you have any problems, just post back.
 
Upvote 0
Hi,

sorry for my ignorance but could you explain it a little more.

The filtered headers are on row 7 from A till AG.
Okay, if the columns are fixed at A:AG starting on Row 7, then executing this single line of code (either in its own macro or within some other procedure) will hide the arrows but leave the AutoFilter active...
Code:
Range("A7:AG7").AutoFilter [COLUMN(A:AG)], , , , False
 
Upvote 0

Forum statistics

Threads
1,214,431
Messages
6,119,458
Members
448,899
Latest member
maplemeadows

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top