Kopiëren als voldaan wordt aan twee voorwaarden

Status
Niet open voor verdere reacties.

wpayanda

Gebruiker
Lid geworden
30 jan 2001
Berichten
87
Onderstaande code wil ik gebruiken om de gegevens die in kolom A van worksheet "Parelhardheid MT Corax" te kopieren als er voldaan is aan twee eisen! namelijk: de datums moeten overeen komen met elkaar (Kolom A en Cel G5) en de test nummers (Kolom B en cell G3) moeten dezelfde zijn. cellen G3 en G5 staan op een andere worksheet. dus als waarde in cel G3 overeen komt met de waarde in cell A5, dan moet van rij 5 cellen C tot en met V gekopierd worden en dan in een andere sheet geplakt worden. Ik krijg ook geen foutmelding! weet iemand wat ik hier fout doe?



Code:
Sub CopyRow()


If Range("B3").Value = "CORAX A" Then
Worksheets("Parelhardheis MT Corax").Activate
For Each Row In Worksheets("Parelhardheis MT Corax")
If Row.Columns("A1:A2000").Value = Worksheets("Formulier").Range("G3").Value Then
If Row.Columns("B1:B2000").Value = Worksheets("Formulier").Range("G5").Value Then
Range("C:V").Select
Selection.Copy
Worksheets("Formulier").Activate
Range("B10").Select
Selection.PasteSpecial Paste:=x1pasteall, operations:=x1none, skipblanks:=False, Transpose:=True
End If
End If
End If

End Sub
 
Je vergelijkt appels met peren

Ik begrijp een beetje uit je vraag dat als de waarde uit een specifiek cel in kolom A overeenkomt met de waarde van cel G3 op een ander tabblad er een aantal cellen gekopieerd moet worden. Hetzelfde geldt dan voor de andere kolom. Je vraagstelling is echter niet echt duidelijk.

Je vergelijkt echter een hele kolom met een cel. Dat gaat volgens mij niet helemaal goed. Technisch zal het wel werken (je krijgt geen foutmelding), gelijk zal de inhoud echter niet zijn.

Volgens mij zul je een routine moeten maken die de cellen in de bewuste kolom een voor een uitvraagt en vergelijkt met de cel G3 of die andere uit je tekst. Daarna zul je de cellen die je wilt kopieren weer een voor een moeten lezen en plakken naar de plek waar je ze neer wilt zetten.
 
@ wpayanda Zie de spelregels van deze sectie a.u.b. Topictitels als "code werkt niet" zijn we hier niet van gecharmeerd.
 
Ok huijb, bedankt voor de verbetering.

asmeets, ook bedankt voor de uitleg. Ik moet er wel even bijzeggen dat ik niet veel weet van VBA. Dit is echt de eerste keer dat ik met VBA en Macro's moet werken en dat in verband met mijn stageopdracht. Ik heb ooit met JAVA geprogrammeerd maar dat is ten eerste heel wat anders en ten tweede lang geleden (ongeveer 3 jaar geleden!). Ik studeer eigenlijk ook een heel andere richting (werktuigbouwkunde) dus programmeren met VBA en macro's maken heb ik nooit hoeven te doen.

Dus is nu mijn vraag, kan iemand mij helpen/meer uitleggen hoe ik het moet doen zodat ik mijn macro toch goed kan krijgen!? Ik heb al meerdere handleidingen van internet gedownload maar echt ver kom ik er niet mee.

Ik zie jullie reacties graag tegemoet,

Alvast bedankt
 
Een stukje code

Ik heb een stukje code toegevoegd dat laat zien hoe je cellen op een tabblad een voor een kunt bewerken. Dat heeft mij ook wat zoekwerk gekost. Je kunt op deze manier ook vergelijkingen opbouwen. Als je weet welke cellen je moet vergelijken mag het niet zo moeilijk meer zijn.

Met een aantal loops kun je e.e.a. slim opbouwen

Ad
 

Bijlagen

  • code.txt
    766 bytes · Weergaven: 53
Ad ik weet niet hoe ik je moet bedanken, je hebt me echt heel erg geholpen. :D

Ik wist echt niet hoe ik elke cel appart moest laten controleren, heb heel veel gezocht overal maar zonder enige resultaat.

Ik voeg hierbij een bijlage waarin je een duidelijke beeld kunt krijgen van mijn probleemstelling. Als je in sheet "Formulier" de drie velden van Stof, Chargenummer en Datum ingevuld hebt ( met behulp van de userform!) dan moet hij de rest van de velden automatisch gaan invoeren. Het zal me nog veel tijd gaan kosten maar ik ga mijn best doen. :thumb:

Nogmaals bedankt :thumb:
 

Bijlagen

  • Rootmetingen.zip
    41,7 KB · Weergaven: 34
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan