Simpel voorbeeldje gevraagd "voorwaarde"

Status
Niet open voor verdere reacties.

Ad4Jansen

Gebruiker
Lid geworden
20 jun 2007
Berichten
130
Hallo ik wil wat keuzes in mijn codes opgaan nemen.

1 als de waarde in een bepaalde cel gelijk is aan 1 dan moet deze regel in het Knip bereik opgenomen worden.

2 als er een foutmelding komt wat de code dan moet doen (code x)

Ik ben ervan overtuigd dat dit in een van de eerder genoemde boeken te vinden is maar die ga ik vd week eens proberen op te snorren

Met een simpel voorbeeldje ben ik al tevreden zodat ik het verder kan uitwerken.

Alvast bedankt voor de hulp :thumb:

Ad
 
Kijk ook in het Excel subforum, daar wordt zeer regelmatig een lus gemaakt doorheen de cellen van een kolom bvb. geschreven.

Met een IF - THEN - ELSE structuur test je dan wat er in de cel staat.
 
ja maar....

Hoi Wigi,

Binnen excel weet ik wel hoe dit gaat =als(a1>2;dit;dat) enzz

binnen Vba begrijp ik het nog niet. Ik maak de codes normaal met een wizard en krijg er dus geen if functie in....

Het gaat er mij dus om hoe ik ze moet schrijven en te combineren met een verschillende codes

Ad:o
 
Laatst bewerkt:
Bvb. een simpele lus doorheen kolom A, beginnend in rij 1 en tot de laatst gebruikte rij:

Code:
Sub Wegschrijven()

    Dim lLaatsteRij As Long
    Dim l As Long
    
    lLaatsteRij = Range("A" & Rows.Count).End(xlUp).Row
    
    For l = 1 To lLaatsteRij
    
        If Range("A" & l).Value = 1 Then
        
            'doe iets
            
        Else
        
            'doe iets anders, evt. een nieuwe IF erin
            
        End If
    
    Next
    
End Sub

Wigi
 
bedankt maar.........

Wigi,

Ik ben nu op de goede weg, ;) dit is gedeeltelijk wat ik zoek :)

Maar

Wanneer het systeem een foutmelding geeft bijv een bestand kan niet gevonden worden

Kan je dit in de code verwerken (iets met onerror ofzo, ik zeg ook maar wat)

Alvast bedankt Ad
 
in de IF

Wigi,

In het kort waar ik mee bezig ben: We hebben personeel dat uren op een bepaald dossier schrijft. Ik verwerk deze staten per persoon/per dag per regel dus enz.
Dit dossiernr staat aan het einde vd regel. Ik sorteerde de regels nu op dossier alles tot hier dmv verschillende codes.

Vervolgens selecteer ik de regels handmatig die betrekking hebben op eenzelfde dossier.

Vervolgens start ik een nieuwe code die de selectie knipt en in het betreffende dossier (bestand)plakt. enz enz (op deze manier raakt mijn te verdelen urenlijst leeg en mijn dossiers aangevuld)

Wat ik wil bereiken is:

- dat ik de handmatige selectie voorzie van een code
- bij het openen van het dossier kan het voorkomen dat het dossier al afgesloten en ingediend is en dan stopt mijn code :evil:(omdat hij dit bestand niet kan vinden) Als dat zo is dan wil ik dat de uren op een "prullebak" werk geschreven worden

Met die instructie van jou kan ik mijn eerste doel al gedeeltelijk bereiken. Alleen zit ik nog te stoeien met een variabele knip selectie. Het kan nl voorkomen dat er 1 regel betrekking heeft op een dossier maar het kunnen er ook 10 zijn.


Ad
 
Stel je gegevens staan in werkbald 1, range A1:F40, het dossiernummer in kolom F.
Sorteer je gegevens
Code:
sheets(1).Range("A1").currentregion.sort "F1"

selecteer alle gegevens per dossiernummer en kopieer naar het overeenkomstige (reeds geladen) dossierbestand
Code:
for j=1 to sheets(1).Range("A1").currentregion.rows.count
  c0=sheets(1).cells(j,6).value
  x=j
  do while sheets(1).cells(j,6).value=c0
    j=j+1
  loop
  With workbooks(("dossier" & c0 & ".xls").sheets(1)
    sheets(1).range(sheets(1).cells(x,6),sheets(1).cells(j,6).copy .cells(.range("A1".currentregion.rows.count,1)
Next
Je kunt hiervoor ook de ingebouwde filterfunkties van Excel (autofilter of advanced filter) gebruiken.
 
Laatst bewerkt:
bedankt ik ga

bedankt ik ga eens proberen wat ik hiermee kan.......:thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan