• 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.

Rijen toevoegen uit andere sheet op basis van kolom criteria

  • Onderwerp starter Onderwerp starter trie
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

trie

Gebruiker
Lid geworden
30 nov 2005
Berichten
37
Goedeavond,

Hoe kunnen rijen automatisch worden toegevoegd vanuit een andere sheet?
Ik heb voor nu de kolom Type hulp kolom, maar kan dat ook zonder?
Beide voorbeelden zijn welkom. Zie bijlage.

Alvast mijn dank.
 

Bijlagen

Welke twee voorbeelden verwacht je? Klopt het bestand wel met de vraag? Je kan toch filteren? Of een draaitabel gebruiken?
 
ik snap wat je bedoelt maar in de 1e sheet komen uiteindelijk ook andere races (informatie) te staan dan in sheet 2. Ik wil alleen de rijen automatisch "importeren" die ML bevatten. In de 1e sheet staat dus een kolom met ML in de cellen. Ik wil dat als ik een rij toevoeg in sheet 1, die ML in de kolom Type heeft, dat die in sheet 2 komt te staan. Is dit mogelijk? Met 2 voorbeelden bedoelde ik met hulpkolom en zonder hulpkolom maar laten we voor nu kijken zonder hulpkolom, dan is vor mij meer werkbaar.
 
Laatst bewerkt:
Waar komen de 'Jockey' en 'Wheater' dan vandaan? Wat werkt er niet aan filteren of een draaitabel? Anders wordt het een VBA oplossing waarvan voldoende voorbeelden te vinden zijn.
 
Voorbeeld

In het nieuwe voorbeeld wordt het wellicht duidelijker. Ik heb hierbij een hulpkolom Type gebruikt in Sheet WP. Die kolommen 'Jockey' en 'Wheater' hoef ik niet op te halen, die vul ik zelf in. Je ziet die lege rijen...ik wil dat dus niet. Hij moet alleen de rijen ophalen die ML in de kolom Type bevatten.
 

Bijlagen

Wat is het nut van tabellen met zoveel lege rijen? Het nieuwe voorbeeld voegt niets toe aan het eerdere voorbeeld.
Wat werkt er niet aan filteren of een draaitabel?
Volgens mij heb ik hier geen reactie op gezien.
 
Je benadering is onbehulpzaam en onvriendelijk. Wat is het nut van tabellen met zoveel lege rijen? GEEN inderdaad, dat vermeld ik toch ook dat ik het niet wil? Wat is er nu moeilijk aan mijn vraagstuk en het voorbeeld met jullie ervaring? Vergeet dan even mijn voorbeeld, en stel ik de vraag anders: Hoe kan ik rijen/cellen van het ene werkblad, naar het andere werkblad krijgen met als criteria dat die rij een cel bevat met de waarde ML. Ik lees en zie me radeloos op internet en ben al dagen bezig. Dus ik doe ook mijn uiterste best.
 
je benadering is onbehulpzaam en onvriendelijk
Dat is jouw perceptie. Op de al meermalen gestelde vraag geef je geen antwoord. Moet ik even een macrotje maken? Geen probleem hoor.
Wel even de inrichting van de resultaattabel of de code aanpassen.
Code:
Sub VenA()
  With Sheets("Results").ListObjects(1).Range
    .AutoFilter 5, "Ml"
    .Offset(1).Copy Sheets("WP").Cells(Rows.Count, 1).End(xlUp).Offset(1)
    .AutoFilter 5
  End With
End Sub
 
Dat was inderdaad mijn perceptie, en als onterecht was dan neem ik graag mijn woorden terug.
Dank je voor de code. Die werkt. Ik had al iets gevonden met VBA. Het verschil met jouw code is dat jouw code de rijen nogmaals eronder plakt, dus dubbele rijen. Als dat opgelost zou kunnen worden met de mogelijkheid om zelf de kolommen aan te geven waarvan hij de cellen kopieert, zou ik ontzettend blij zijn. Maar ik begrijp dat als het veel werk is, te ver gaat voor dit forum. Als hij alleen update vind ik het ook fantastisch. Heb ik het zo duidelijk gezegd?
Wat mij betreft die macro, is prima.
 
Laatst bewerkt:
emields, dank je wel! vraagje nog, als ik bepaalde kolommen niet mee wil nemen maar b.v. A, B, D en dus b.v. C niet, welke regel(s) pas ik dan aan? Het zou ook mooi zijn als ik kan aangeven in welke kolom de data komt te staan, dit omdat ik straks ook sheets ga maken waarvan de kolommen anders ingedeeld zijn en niet op exacte volgorde als waar de data vandaan komt. Alvast dank, maar hier ben ik al blij mee. Fijne feestdagen in ieder geval!
 
Begin met het plaatsen van een bestand met een indeling die jij graag wenst.
 
hetzelfde bestand. hier zie je dat Resultaat in kolom Jockey wordt geplaatst in plaats van Resultaat (kolom F). Als ik een kolom niet mee wil nemen, laten we in dit voorbeeld kolom B niet meenemen.
 
Laatst bewerkt:
Dan mogen de kolommen ook nog in andere volgorde staan.
Code:
Sub hsv()
 Dim sv, sv_2, x
 Application.DisplayAlerts = False
    sv = Sheets("results").ListObjects(1).Range.Resize(, 7).Value
    x = Sheets("wp").ListObjects(1).HeaderRowRange.Value
    Sheets("results").ListObjects(1).ListColumns(5).Range.Name = "b"
     With Application
       sv_2 = .Transpose(Split(Join(Filter([transpose(if(b="ML",row(b),"~"))], "~", 0))))
       sv = .Index(sv, sv_2, .IfError(.Match(x, .Index(sv, 1), 0), 7))
     End With
 With Sheets("wp").ListObjects(1)
    .ListRows.Add.Range.Resize(UBound(sv)) = sv
    .Range.RemoveDuplicates Array(1, 2, 3, 4, 5, 6, 7)
  End With
End Sub




of:

Code:
Sub hsv()
 Dim sv, x
 Application.DisplayAlerts = False
    sv = Sheets("results").ListObjects(1).Range.Resize(, 7).Value
    With Application
      x = Sheets("wp").ListObjects(1).HeaderRowRange.Value
      sv = .Index(sv, Evaluate("row(2:" & UBound(sv) & ")"), .IfError(.Match(x, .Index(sv, 1), 0), 7))
    End With
 With Sheets("wp").ListObjects(1)
    .ListRows.Add.Range.Resize(UBound(sv)) = sv
    .Range.AutoFilter 7, "="
    .Range.Offset(1).Delete
    .Range.AutoFilter 7
    .Range.RemoveDuplicates Array(1, 2, 3, 4, 5, 6, 7)
  End With
End Sub
 
Laatst bewerkt:
Dank je. Ik ga hiermee even aan de slag. Fijne jaarwisseling.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan