Arnout1987
Gebruiker
- Lid geworden
- 8 jun 2016
- Berichten
- 6
Hallo allen,
Ik ben bezig met een kleine automatisering in een Excel Sheet. Ik krijg het nog niet helemaal voor elkaar.
Wat ik wil doen
Ik heb een rij met nummers, waarvoor ik wil dat een macro 1 voor 1 wordt uitgevoerd. De uitkomst van de Macro is "Correct" of "Verschil". Deze uitkomst moet naast het nummer komen te staan wat ik heb gevuld. De Macro wordt gedraaid op meerdere andere tabbladen. Het belangrijkste hiervoor is dat het nummer in de juiste cel op een ander tabblad wordt geplaatst.
Input nummers: Vanaf Cel B7 naar beneden, in het werkblad "Invoer".
Output per nummer: Moet altijd in cel C3 van werkblad "Importeren".
Wat ik nu heb
Als ik maar 1 nummer selecteer gaat het helemaal goed (ofwel, de macro doet z'n werk. Ook het Correct en Verschil werkt goed. Momenteel ziet VBA wel dat de macro bijvoorbeeld 3x moet worden doorlopen als ik drie nummers (in cel B7, B8 en B9) zet, maar hij gebruikt dan steeds het nummer uit cel B7. Hoe kan ik er voor zorgen dat na de eerste run het nummer uit cel B8 wordt gebruikt? Ook zal de uitkomst van nummer uit cel B8, in cel C8 moeten komen te staan, waar nu nog C7 staat.
Ik ben bezig met een kleine automatisering in een Excel Sheet. Ik krijg het nog niet helemaal voor elkaar.
Wat ik wil doen
Ik heb een rij met nummers, waarvoor ik wil dat een macro 1 voor 1 wordt uitgevoerd. De uitkomst van de Macro is "Correct" of "Verschil". Deze uitkomst moet naast het nummer komen te staan wat ik heb gevuld. De Macro wordt gedraaid op meerdere andere tabbladen. Het belangrijkste hiervoor is dat het nummer in de juiste cel op een ander tabblad wordt geplaatst.
Input nummers: Vanaf Cel B7 naar beneden, in het werkblad "Invoer".
Output per nummer: Moet altijd in cel C3 van werkblad "Importeren".
Wat ik nu heb
Code:
Private Sub Start_Click()
Dim x As Long
NumRows = Worksheets("Invoer").Range("B7", Range("B7").End(xlDown)).Rows.Count
For x = 1 To NumRows
Range("B7").Copy Worksheets("Importeren").Range("C3")
[I]MIJN MACRO[/I]
If Formula = "=Sum(V6:V14)" = 0 Then
Worksheets("Invoer").Range("C7").Value = "Correct"
Else
Worksheets("Invoer").Range("C7").Value = "Verschil"
End If
Next x
End Sub
Als ik maar 1 nummer selecteer gaat het helemaal goed (ofwel, de macro doet z'n werk. Ook het Correct en Verschil werkt goed. Momenteel ziet VBA wel dat de macro bijvoorbeeld 3x moet worden doorlopen als ik drie nummers (in cel B7, B8 en B9) zet, maar hij gebruikt dan steeds het nummer uit cel B7. Hoe kan ik er voor zorgen dat na de eerste run het nummer uit cel B8 wordt gebruikt? Ook zal de uitkomst van nummer uit cel B8, in cel C8 moeten komen te staan, waar nu nog C7 staat.