• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

waarden verplaatsen naar de juiste regel in meerdere kolommen

Status
Niet open voor verdere reacties.
nov->aug = nov,dec,jan,feb,maa,apr,mei,jun,jul,aug

irac = verwijder alle tussenspaties en split op "/", "+" en "&"
Dan zal er gevraagd worden dat bepaalde producten,waarvan een actieve stof (C-kolom) inzit met een irac-code C3 er uit wordt gefilterd, want je hebt voor die teelt en dat jaar al voldoende van analoge actieve stoffen gespoten.
Aangezien dat product (kolom A) niet kan ontmengd worden, moet je dat ganse product dan er uit filteren omdat 1 component niet meer gewenst is.
Moeilijke uitleg zeker ?
Bekijk het alsof je een voedselallergie voor noten hebt, wel dan moet je alle voedsel, waar er iets van noten in de samenstelling zit, schrappen.
 
Kan het niet eenvoudiger zo ?
 

Bijlagen

  • __bestrijding.xlsb
    292,7 KB · Weergaven: 28
ha, de techniek is revolutionair, daar stond ik eventjes van te kijken !
Het is resultaat voldoet wel niet aan de verwachtingen.
Stel ik wil voor kolom E (toepassingsgebied) selecteren op alle cellen die "roos" bevatten, dan bekom ik 236 rijen, in je tabblad staan er 249, dus staan er in 13 rijen in de E-kolom geen roos, maar in de andere kolommen wel.
Je selecteert maw. niet uniek op kolom E, maar op de ganse rij.
De techniek is anders wel leuk. Zouden we dat clipboard niet kunnen splitsen naar een matrix en daarop verder werken ...
 
Ik heb voor de toepassingsperiode ook een iets andere insteek gekozen.
Zie de bijlage.

Het is natuurlijk een beetje merkwaardig dat verschillende kolommen dezelfde gegevens kunnen bevatten.
Dan kom ik terug op mijn eerste opmerking in deze draad (zoals ook blijkt uit de aanpassing van kolom P): pas eerst eens de gegevens in de tabel aan.
Mijn insteek is dan liever: zorg dat kolommen wederzijds uitsluitende gegevens bevatten, dan blijft het filteren zo simpel als in het huidige en vorige bestand.
 

Bijlagen

  • __bestrijding.xlsb
    296,1 KB · Weergaven: 19
Vervolgversie:
 

Bijlagen

  • __bestrijding.xlsb
    282,9 KB · Weergaven: 28
ik denk dat je toch via deze manier er moeilijk zal komen.
* je moet voor de locatie onderscheid kunnen maken tussen bedekt en onbedekt, dus als je filtert op bedekt heb je zo ook alle onbedekte mee. Analoog aan je maanden zal je dus ook een aangepaste string moeten maken "_O_B_S_I_" (voor onbedekt, bedekt, substraat en binnen) en dan filteren op "_B_" of een andere workaround, anders kom je er niet.
* voor de irac-code wordt het een inverse filter, je wil bepaalde code niet hebben, dus parameter 0 ipv 1. Hoe ga je nu de irac-code 3 wegfilteren met al die drieën in de andere kolommen ?

Mogelijke hint, moest je vooraleer je kopieert naar clipboard enkel de kolommen B D(of je aangepaste kolom voor de locaties) E F M N en P (of je aangepaste kolom voor de maanden) zichtbaar houden, de rest allemaal hidden, wat krijg je dan als je verder gaat ? Kan het zelf eventjes niet testen, zou moeten de werkbladen zichtbaar maken, maar moet nu even de koeien melken :rolleyes:.
 
Laatst bewerkt:
hier nog een poging:

ik ben benieuwd of iemand nog fouten in het filteren van de lrac en de datum vindt.
 

Bijlagen

  • Ziekten Met HoofdTabel met irac 6.xlsb
    310,9 KB · Weergaven: 26
Laatst bewerkt:
@cow

Dat valt gemakkeljk te ondervangen door bij de velden waar op tekst van een volledig 'veld' gefilterd moet worden voor en achter de filterterm een vbtab toe te voegen.
 
@sylvester, Kumulus is een M2 als ik hem zo google, ik kan je even niet voorthelpen, dus kaats ik de bal door naar de TS.

@snb, ik bekijk het later vandaag.
 
Zolang jij de koeien niet verwaarloost heb ik wel geduld. :d

Met deze versie komen we al een heel eind volgens mij.
 

Bijlagen

  • __bestrijding.xlsb
    298,9 KB · Weergaven: 26
Laatst bewerkt:
snb, selecteer in jouw laatste bestand eens alleen bij de Middelnaam, Apollo in.
en kijk dan wat je ziet bij de Middelen
 
Ik zie geen probleem (in de nieuwe versie) .. :p
 
snb, als je bij de lrac (Rij 10) een 6 invult neemt hij alle lrac codes waar in 6 in voorkomt ipv alleen de lrac 6 code
 
snb, in post 53 stuurde je deze code:
Code:
Sub M_snb()
    sn = Split(Replace(Replace(Replace(Join(Application.Transpose(Blad3.UsedRange.Columns(5)), ","), ":", ","), vbLf, ","), vbCr, ","), ",")
    
    With CreateObject("scripting.dictionary")
        For j = 4 To UBound(sn)
            If Len(Trim(sn(j))) > 1 Then x0 = .Item(Trim(sn(j)))
        Next
        sn = .keys
    End With
    
    With CreateObject("ADODB.recordset")
        .Fields.Append "item_1", 200, 120
        .Open
        For j = 0 To UBound(sn)
             .AddNew
             .Fields("item_1") = sn(j)
            .Update
        Next
        .Sort = "item_1"
        
        MsgBox .GetString
    End With
End Sub
hij is opvallend snel.
hoe krijg ik hier de lijst uit ipv een string?

met een beetje aanpassing zodat hij alleen de niet weggefilterde cellen laat zien wil ik hem gebruiken in dit bestand : dan wordt hij nog wat sneller
 

Bijlagen

  • Ziekten Met HoofdTabel met irac 8.xlsb
    306,2 KB · Weergaven: 25
Laatst bewerkt:
snb, als je bij de lrac (Rij 10) een 6 invult neemt hij alle lrac codes waar in 6 in voorkomt ipv alleen de lrac 6 code

Je analyse klopt niet, maar de beoogde resultaten evenmin.
Ook dat moet weer in de gegevens van de tabel opgelost worden
 

Bijlagen

  • __bestrijding.xlsb
    298,9 KB · Weergaven: 26
snb, bij de rode lrac als je daar 6 aangeeft dan verdwijnen er veel te veel.
en in de hoofdtabel staat ook lrac 3 en er missen er nog meer

waarom is jouw hoofdtabel onzichtbaar ?
daar staan ook gegevens in die belangrijk zijn voor de gebruiker.
 
Laatst bewerkt:
hoofdtabel zichtbaar maken
Code:
Sub zichtbaar()
    For Each sh In Sheets
        sh.Visible = xlSheetVisible
    Next
End Sub
kolom van de irac-code voorzien van pipes als scheidingsteken
Code:
Sub M_snb()
    sn = Range("a1").CurrentRegion.Columns(2)

    For j = 2 To UBound(sn)
        sn(j, 1) = Replace("|" & Join(Split(Replace(Replace(Replace(Replace(Replace(sn(j, 1), " ", "", , , vbTextCompare), "+", "|", , , vbTextCompare), "&", "|"), "/", "|"), "~", "", , , vbTextCompare), "|", , vbTextCompare), "|") & "|", "||", "|", , , vbTextCompare)
    Next
    
    Range("a1").CurrentRegion.Columns(2) = sn
End Sub
en nu kan je affilteren op bv "|3|" en verdwijnen enkel de 3 (in het programma wel nog de autofilter hiervoor aanpassen)

sorry, geen autofilter zie ik nu, ik denk dat je de list voor de irac-codes eens nieuw moet maken en er dan die pipe voor en achter bij moet zetten in
Code:
       If st(j, 1) <> "" Then sp = Filter(sp, st(j, 1), , IIf(j = UBound(st), 0, 1))
 
Laatst bewerkt:
@syl

Ik ben geen bedrijfsapplicatie aan het maken. Daar is dit forum niet voor.
Ik illustreer een methode waarmee de gewenste resultaten verkregen kunnen worden.

voor de lrac code zet ik in de tabel een tilde,
Code:
        If st(j, 1) <> "" And j = 7 Then st(j, 1) = "~" & Mid(st(j, 1), 2)

zodat daarop gefilterd kan worden met
Code:
If st(j, 1) <> "" Then sp = Filter(sp, st(j, 1), IIf(j = UBound(st), 0, -1), 1)


Ps. als er elementen ontbreken kun jij ze missen.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan