anoniem Geplaatst: 15 mei 2002 Delen Geplaatst: 15 mei 2002 Hallo. Ik ben op zoek naar de code om in een kolom in excel zeg vanaf a2 naar beneden te zoeken naar de eerstvolgende lege cel. staan bv 5 getallen en de 6e cel is leeg. Daar moet om een waarde gevraagd worden. Heb al geprobeerd met if activecel > 0 then ActiveCell.Offset(1, 0).Select end if maar dan gaat de cursor 1 cel naar beneden! Moet heel makkelik zijn maar deze nieuweling komt er niet uit. Alvast bedankt Rob Quote Link naar reactie
anoniem Geplaatst: 15 mei 2002 Auteur Delen Geplaatst: 15 mei 2002 Met de volgende code wordt gezocht in de aangegeven rij naar de waarde die in F8 staat op Blad1: Selection.Find(What:=Sheets("Blad1").Range("F8") - 1, After:=ActiveCell, LookIn:=xlValues, _ LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _ xlNext, MatchCase:=False).Activate ActiveCell.Offset(0, 1).Range("A1:A38").Select Quote Link naar reactie
anoniem Geplaatst: 16 mei 2002 Auteur Delen Geplaatst: 16 mei 2002 bedankt voor je antwoord. helaas werkt het niet bij mij. komst terug met de melding dat er geen wirth in ingesteld??? Quote Link naar reactie
anoniem Geplaatst: 16 mei 2002 Auteur Delen Geplaatst: 16 mei 2002 [code:1:b037977809]Private Function zoek(row As Integer, col As Integer) As Integer While (Rows.Cells(row, col) <> "") row = row + 1 Wend zoek = row End Function[/code:1:b037977809] Roep de functie aan met de rij en kolom waar je wilt beginnen met zoeken. Dan geeft ie de eerste rij terug waar niks in staat. Quote Link naar reactie
anoniem Geplaatst: 16 mei 2002 Auteur Delen Geplaatst: 16 mei 2002 bedankt voor je reaktie. helaas werkt het niet. ik krijg de melding end sub verwacht. maar waar ik die end sub ook zet hij zoekt niet de eerstvolgende lege cel in de kolom... Quote Link naar reactie
anoniem Geplaatst: 17 mei 2002 Auteur Delen Geplaatst: 17 mei 2002 Het is geen sub maar een functie. Je moet bovenstaande direct copieren en plakken. Daarna kun je in je code de functie aanroepen met [code:1:27e1716298]leeg=zoek(1,1)[/code:1:27e1716298] Dan zoekt hij naar de eerste lege cel in kolom A en leeg (mag elke variable zijn als het maar een integer of variant is) krijgt de waarde van de rij. Het feit dat je een melding krijgt dat hij een end sub mist wil zeggen dat je ergens een sub hebt zonder eind. De bovenstaande functie moet je dus niet in een andere sub of functie plakken. Maar er los onder zetten. Quote Link naar reactie
anoniem Geplaatst: 17 mei 2002 Auteur Delen Geplaatst: 17 mei 2002 Nogmaals bedankt voor jullie reactie. ik heb nu de volgende code : Sub Macro2() ' ' Macro2 Macro ' De macro is opgenomen op 14/05/2002 door Wels. ' ' Sneltoets: CTRL+i ' Range("a2").Select leeg = zoek(1, 1) End Sub Private Function zoek(row As Integer, col As Integer) As Integer While (Rows.Cells(row, col) <> "") row = row + 1 Wend zoek = row End Function Maar de cursor gaat allen van a1 naar a2 en thats it. Eronder staan nog getallen maar hij zoekt niet verder..... Wat doe ik verkeerd?????? Groeten Rob Quote Link naar reactie
anoniem Geplaatst: 17 mei 2002 Auteur Delen Geplaatst: 17 mei 2002 Ik hem mijn code nog enigszins aangepast. Probeer maar eens. :wink: Cells.find _ (What:="", _ After:=ActiveCell, _ LookIn:=xlValues, _ LookAt:=xlPart, _ SearchOrder:=xlByRows, _ SearchDirection:=xlNext, _ MatchCase:=False) _ .Activate Quote Link naar reactie
anoniem Geplaatst: 18 mei 2002 Auteur Delen Geplaatst: 18 mei 2002 Het werkt, bedankt. Alleen is de bedoeling dat in kolom a gezocht wordt. Nu gaat de cursor naar links de kolommen af. Ik heb xlByRows al vervangen door xlByColums maar dat schijnt zo niet te werken. Groeten. :-? Quote Link naar reactie
anoniem Geplaatst: 18 mei 2002 Auteur Delen Geplaatst: 18 mei 2002 Verander Colums in Columns dan werkt het bij jou ook! :D :-? Quote Link naar reactie
anoniem Geplaatst: 18 mei 2002 Auteur Delen Geplaatst: 18 mei 2002 Sorry hoor, kolom had ik wel goed in de code staan maar verkeerd in het bericht. Ik heb het verandert, maar hij gaat nog steeds zoeken in andere kolommen a b s c d - ! waar het - staat gaat de cursor naartoe terwijl de bedoeling is bij ! in kolom a uit te komen...... Ligt het misschien aan de direction? 't is wat..... Nogmaals bedankt hoor! Quote Link naar reactie
anoniem Geplaatst: 18 mei 2002 Auteur Delen Geplaatst: 18 mei 2002 Dit werkt voor 100%. Zelf getest. [code:1:14945f31b1]Sub Lege_Cel() leeg = zoek(1, 1) Rows.Cells(leeg, 1).Select End Sub Private Function zoek(row As Integer, col As Integer) As Integer While (Rows.Cells(row, col) <> "") row = row + 1 Wend zoek = row End Function [/code:1:14945f31b1] Quote Link naar reactie
anoniem Geplaatst: 18 mei 2002 Auteur Delen Geplaatst: 18 mei 2002 Ik ben eruit. Mensen bedankt! :lol: Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen