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

Gegevens overnemen onder voorwaarden uit Verschillende werkbladen

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

T2S

Gebruiker
Lid geworden
20 mrt 2006
Berichten
7
Beste allen,

Ik heb geprobeerd het forum zorgvuldig te checken op gerelateerde onderwerpen, maar geen van de onderwerpen, voldoet mijns inziens aan mijn probleem.

Mijn probleem is het volgende:

Ik wil gegevens uit één werkblad genaamd X importeren naar werkblad Y, onder de voorwaarde dat er in een specifieke cel 'Ja' staat. Als er dus niets in die kolom staat, dan moet het niet overgenomen worden.

Dit is mijn eerste stap van het probleem, als iemand me hiermee kan helpen, GRAAG!

Alvast hartstikke bedankt!

Groeten,

DiLauro11
 

Bijlagen

Oplossing voor stap 1: (in cel A2 van Blad2)

=ALS(Blad1!$F2="JA";Blad1!A2;"")
 
Roncancio bedankt!! Stap: 2!

Hey Roncie! (en/of collega's)

Hartstikke bedankt! Ik ben nu pas weer op mijn werk, vandaar dat ik nu pas reageer.

Luister... Nu wil ik, dat er vanuit blad 1 verschillende data overgenomen kan worden (wanneer er Ja staat), maar dat het onder elkaar verzameld wordt in blad 2. begrijp je het?

Zie het voorbeeld.

Dit betekent, dat ik Janssen en Pepen Onder elkaar weergegeven wil hebben in blad 2, dus niet dat ik een regel ertussen krijg, omdat er bij Puk Nee staat.

Weet je hoe ik dit het beste aan kan pakken?

Moet ik een vaste opmaak maken of? Ik zou het niet weten.

Bedankt,

DiLauro11

P.s. Ik dacht dat ik wat van Excel wist, maar dit zijn echt dingen, die moet je gewoon een keer gebruikt hebben.
 

Bijlagen

Je zou het met een macro kunnen doen.

Sub Macro1()
Dim SchRij, Rij, Kolom As Integer
Rij = 1
SchRij = 1
Worksheets(2).Range("A:E") = ""
While Worksheets(1).Cells(Rij, "A") <> ""
If Worksheets(1).Cells(Rij, "F") = "ja" Then
While Worksheets(2).Cells(SchRij, "A") <> ""
SchRij = SchRij + 1
Wend
For Kolom = 1 To 5
Worksheets(2).Cells(SchRij, Kolom) = Worksheets(1).Cells(Rij, Kolom)
Next
End If
Rij = Rij + 1
Wend
End Sub
 
Whooohooo...

Hoohoo Roncie!

Je gaat even iets van 361 stapjes te snel voor mij. Ik gebruik normaal nooit macro's, dus ik was al bang dat het er een keer van moest gaan komen! :confused:

Anyway..

Ik zal het wat concreter uitleggen, want jij geeft de perfecte tips, maar het zit nog iets anders. Want het moet namelijk van een andere werkmap gehaald worden. Het is dus niet tussen twee werkbladen in een werkmap, maar tussen twee werkmappen.

Dus tussen Voorbeeld.xls en Voorbeeld2.xls, bij wijze van spreken.

Hoe moet ik het dan aanpakken. Als het teveel gedoe is om dat uit te leggen, dan begrijp ik dat ook.

In ieder geval alvast bedankt voor de moeite!

DiLauro11
 
Je kan een macro op verschillende manieren starten.
Bijvoorbeeld als het werkmap geopend wordt, via een knop etc.

Onderstaande macro controleert allereerst of het bestand voorbeeld2 is geopend.
Is dat niet het geval dan wordt het bestand geopend (uit Mijn Documenten)
Vervolgens worden de kolommen A t/m E van het 2e werkblad van voorbeeld2 leeggemaakt.
Daarna kijkt de macro of er in de F-kolom van voorbeeld1 een "ja" staat. Is dat het geval dan wordt op de eerstvolgende lege regel van voorbeeld2 de gegevens van voorbeeld1 neergezet.

Dat is alles.


Sub Macro1()
Dim SchRij, Rij, Kolom As Integer
Rij = 1
SchRij = 1
For c = 1 To Workbooks.Count
If Workbooks(c).Name = "voorbeeld2.xls" Then
Exit For
End If
If c = Workbooks.Count Then
Workbooks.Open ("C:\Mijn documenten\voorbeeld2.xls")
End If
Next
Workbooks("voorbeeld2").Worksheets(2).Range("A:E") = ""
While Workbooks("voorbeeld1").Worksheets(1).Cells(Rij, "A") <> ""
If Workbooks("voorbeeld1").Worksheets(1).Cells(Rij, "F") = "ja" Then
While Workbooks("voorbeeld2").Worksheets(2).Cells(SchRij, "A") <> ""
SchRij = SchRij + 1
Wend
For Kolom = 1 To 5
Workbooks("voorbeeld2").Worksheets(2).Cells(SchRij, Kolom) = Workbooks("voorbeeld1").Worksheets(1).Cells(Rij, Kolom)
Next
End If
Rij = Rij + 1
Wend
End Sub
 
Er gebeurt niets...

Hoi Roncie!!

Het gaat niet leuk zo! Ik word gek van mezelf! :mad:

Ik heb gewoon geprobeerd om je voorbeeld letterlijk uit te voeren, maar kennelijk mis ik een stapje.

Ik krijg geen weergave van de ja's, als ik je laatste macro invoer. Of moet ik dan ook nog die andere formule invoeren?

Thanks!

DiLauro11
 
Voor de zekerheid heb ik een voorbeeld 1 bijgedaan.

Je zegt dat er niets gebeurd, maar staat er wel een voorbeeld2 in c:\mijn documenten ?
 
Laatst bewerkt:
Ik weet het niet meer!!

I'm getting embarrased! :o

Ik heb die code geopend en aangepast. Er was inderdaad gewoon een voorbeeld2 aanwezig. Ik heb in de code alleen de juiste directory aangepast, dus alles zou het moeten doen.

En nog niet.. Hij neemt de gegevens niet over, terwijl er toch echt ja staat.

Ik zal ongetwijfeld iets heel stoms fout doen.

Groeten...
 
Kan je het bestand naar mij sturen zodat ik kan kijken wat er aan de hand is.
 
Zo ver was ik ook!

:cool: :shocked:

Ik kan toch geen bestand bijvoegen???
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan