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

for next vba

Status
Niet open voor verdere reacties.

jli

Gebruiker
Lid geworden
14 feb 2008
Berichten
39
hallo experts,

Bij deze een klein stukje vba code.
Graag zou ik willen dat als A1 1 is hij de tekst laat zien.

Code:
For Each cl In Range("e24:e1500") '.SpecialCells(20, 2)
 If cl <> "" Then
  If [G8] = "" Then
   [G8] = cl
    Else
    [G8] = [G8] & ";" & cl
 End If
  End If
    [COLOR="Red"] If Range("a1") = 1 Then[/COLOR]
Next cl
  [COLOR="red"]Else[/COLOR]
 [COLOR="red"]Range ("A2").value = "Volgende"[/COLOR] 
 [COLOR="red"]End If[/COLOR]

Het rode gedeelte heb ik er zelf ingezet, en daar geeft die dus een fout op.
Hoe krijg ik tussen de For Next loop een If commando ??

Jurgen
 
jli,

Om te beginnen
De fout is op te lossen door het volgende:
Code:
     If Range("a1") <> 1 Then Range ("A2").value = "Volgende"
Haal de laatste rode regels weg na Next cl

vervolgens wat bedoel je met de eerste vraag?
Als A1 = 1 dan tekst laten zien, welke tekst?
 
Laatst bewerkt:
Beste Superzeeuw,

De code moet eigenlijk uit de For - Next loop gaan.
Om met een nieuwe For - Next loop te beginnen.

Jurgen
 
Laatst bewerkt:
jli,

uit een for next loop stappen doe je met
Code:
Exit For
 
Laatst bewerkt:
Beste Supermeeuw,

Ja inderdaad dat werkt, maar de formule doet niet wat ik wil.
Ik heb een rij met namen, en de code plaatst die namen achter elkaar gescheiden door een ; als hij er 10 achter elkaar heeft gezet in A10 moet hij de volgende 10 namen in A11 plaatsen enz.

Jurgen
 
jli,

In je code plaats je de volgende regels
Aan het begin Teller = 0
In je code Teller = Teller + 1
Op de locatie waar cel A10 wordt gevuld komt dan IF Teller = 10 Then ......
En zet de Teller weer op 0
 
Ja dat is dus het punt waar ik op vast loop',

Op de locatie waar cel A10 wordt gevuld komt dan IF Teller = 10 Then ......

Als ik Exit For gebruik en weer met een For - Next loop begin dan begint de code weer vanaf boven aan de namen hij moet eigenlijk beginnen waar de eerste For - Next loop mee geeindigd is.

Jurgen
 
jli,

Dan moet je dus niet uit de For Next loop stappen maar doorgaan in die loop.
 
Laatst bewerkt:
Code:
For Each cl In Range("e24:e1500") 
 If cl <> "" Then
  If [G8] = "" Then
   [G8] = cl
    Else
    [G8] = [G8] & ";" & cl
 End If
  End If
   Next cl

Hoe krijg ik dan voor elkaar, als in G8 10 namen met een ; achter elkaar gezet zijn
de code e volgende 10 namen in G9 zet, en de daarop volgende 10 namen in G10 enz.

Jurgen
 
jli,

Probeer het eens met de volgende code:
Code:
Sub test()
    Teller = 0
    Regel = 8
    Waarde = ""
    For Each cl In Range("e24:e1500")
        If cl <> "" Then
            Waarde = Waarde & cl & ";"
            Teller = Teller + 1
            If Teller = 10 Then
                Cells(Regel, "G").Value = Left(Waarde, Len(Waarde) - 1)
                Regel = Regel + 1
                Teller = 0
                Waarde = ""
            End If
        End If
    Next cl
End Sub
 
jli, Probeer dit 'ns...
Code:
Sub TienPerRegel()

    For i = 1 To Range("E24:E1500").SpecialCells(xlCellTypeConstants).Cells.Count Step 10
        x = x + 1
        Cells(x + 7, 7).Value = Join(WorksheetFunction.Transpose(Cells(23 + i, 5).Resize(10)), "; ")
    Next i

End Sub
Op zich kan je 'm natuurlijk eerst naar een array wegschrijven en dan pas weer communiceren met de sheet, maar het gaat wel prima zo...;)

Groet, Leo
 
Laatst bewerkt:
Beste Superzeeuw,

Dit is inderdaad wat ik bedoel, alleen als er 45 namen zijn, neemt de code de laatste 5 namen niet mee.

Jurgen
 
jli,

Plaats volgende regel na Next cl
Code:
    If Teller <> 0 Then Cells(Regel, "G").Value = Left(Waarde, Len(Waarde) - 1)
 
Leo,

Kop op, je hebt je best gedaan:thumb:

Wat mij wel opvalt is dat men soms de oplossing niet opvolgt omdat men de code niet kan lezen of begrijpt.
 
Kop op, je hebt je best gedaan:thumb:
Snif... dank je wel jongen... DAT was wat ik ff nodig had! :love:

Wat mij wel opvalt is dat men soms de oplossing niet opvolgt omdat men de code niet kan lezen of begrijpt.
Dan heb je hierbij geloof ik uitgevonden HOE je een oplossing onzichtbaar kan maken!!! :thumb: :D:D:D:D

Groet, Leo
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan