Just nu i M3-nätverket
Gå till innehåll

Autofilter över flera kolumner


ahnes

Rekommendera Poster

hej!

 

Har ett problem..  jag har ett ark där jag vill kunna använda autofilter över X antal kolumner. Använder nu nedan kod för att ha en kolumn som filtreras men vill kunna ha fler stycken men får inte till det.

 

K1 är en dataverifiering med Lista och där vill jag att listan ska kollar över flera fält. Dvs att i Else satsen vill jag kunna ha Field:=3 också

 

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$K$1" Then
 If Range("K1") = "Alla" Then
  Range("A5").AutoFilter
 Else
  Range("A5").AutoFilter Field:=2, Criteria1:=Range("K1")
 End If
End If
End Sub

 

Någon som vet hur man kan lösa detta?

Länk till kommentar
Dela på andra webbplatser

Ove Söderlund

Du kanske får mecka lite i stil med detta:

(Inspiration till koden hämtad från: VBA Filter Multiple Columns / analysistabs.com

 

Private Sub Worksheet_Change(ByVal Target As Range)

	If Target.Address = "$K$1" Then

		If Range("K1") = "Alla" Then
 			Range("A5").AutoFilter
 		Else

			With ActiveSheet.Range("A5")
				.AutoFilter Field:=2, Criteria1:=Range("K1")
				.AutoFilter Field:=3, Criteria1:="Något att filtrera efter"
			End With

'		Range("A5").AutoFilter Field:=2, Criteria1:=Range("K1")

		End If

	End If

End Sub

 

Länk till kommentar
Dela på andra webbplatser

Tack!

 

Men får det inte riktigt att funka. lägger jag in 

.AutoFilter Field:=3, Criteria1:="L1"

och gör en ny lista i L1 så händer det inget och väljer jag nått i listan på K1 så försvinner allt, dvs filtrerar bort allt istället :(

Länk till kommentar
Dela på andra webbplatser

Ove Söderlund

Jag tror att det kan behövas en mer utförlig beskrivning av kalkylarket. Om det inte är alltför känsliga data kanske du kan posta en skärmdump här?

 

 

Länk till kommentar
Dela på andra webbplatser

Nej då, inget känsligt! Det är till jobbet för att förenkla lite :)

Så här ser det ut.

Kolumn B är dold och där står det om det är Morgon, mellan eller kväll vilket man kan välja i K1 så filtrerar den ut det.

Målet är att kunna specificera vilket dag för dag vad som hör till vilket.

 

Te.x att måndag så tillhör 14, 16 och 18 Morgon vilket man väljer i K1 så dom filtreras ut. Man får självklart förtydliga att det är Måndag morgon man är ute efter i K1.

 

Det ultimata skulle vara att man där det står veckodag har dropdown menyn och kan välja under respektive dag.

 

Kanske ska tillägga att det kommer vara ett delat dokument..

 

image.png.cc60b65ea82921b001be60825812659f.png

Länk till kommentar
Dela på andra webbplatser

Ove Söderlund

Ok, jag försöker följa ditt tankemönster och hur pass fel ute är jag om det är ungefär så här du vill ha resultatet?

 

image.thumb.png.2c7c9aededdf52d7e04b5d0b7b72a30b.png

Länk till kommentar
Dela på andra webbplatser

Ja det är ungefär så jag vill ha det fast allt ska fortfarande ligga ihop så att säga, dom två nedanför den stora ska inte finnas utan allt i ett :)

Dom röda fälten representerar att det inte ska fyllas i något där och sen har vi på våra utskrivna mallar uppdelat efter Morgon, Mellan och Kväll så det är meningen att det ska bli enklare att fylla i listan.

Länk till kommentar
Dela på andra webbplatser

Ove Söderlund

Ok, jag undrar om det hela inte är enklast att ha programkod som;

1. filtrerar mot Morgon, Mellan och Kväll

2. Döljer de kolumner/dagar som inte behöver visas

 

För annars så tolkar jag din beskrivning att det inte spelar någon roll om alla dagar visas, bara att det filtreras efter tidpunkten. I så fall räcker det med att bara ha ett filter mot tidpunkt och ingen mer. Om jag är ute och cyklar så är det bara att förklara mera så lär även jag mig vad du är ute efter :)

 

 

Länk till kommentar
Dela på andra webbplatser

Nja, alla måste visas när arbetsboken öppnas :)

Det är egentligen så dom det är uppbyggt nu jag är ute efter fast det ska funka att ha dropdown i flera kolumner :)

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...