Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: VB zoeken naar laatste lege cel maar...  (gelezen 5262 keer)

0 leden en 1 gast bekijken dit topic.

Offline Hombre

  • Volledig lid
  • **
  • Berichten: 164
  • ¡Qué guapa!
VB zoeken naar laatste lege cel maar...
« Gepost op: 26 november 2006, 10:56:02 »
Beste forummers

Zoeken naar de laatste lege cel in een rij is geen probleem maar deze rij is onderbroken door cellen die niet meetellen.
Ik heb het volgende maar werkt niet naar behoren, wat doe ik hier verkeerd,

Sub loopmaken()

Range("B8").Select
Do
    ActiveCell(2, 1).Select
Loop While ActiveCell > 1
   
If ActiveCell = [B59] Then
    Range("B63").Select
        Do
        ActiveCell(2, 1).Select
        Loop While ActiveCell > 1
        End If

        If ActiveCell = [B118] Then
            Range("B122").Select
            Do
            ActiveCell(2, 1).Select
            Loop While ActiveCell > 1
            End If

            If ActiveCell = [B177] Then
                Range("B181").Select
                Do
                ActiveCell(2, 1).Select
                Loop While ActiveCell > 1
                End If

                If ActiveCell = [B236] Then
                    MsgBox "Bladen vol"
                    Exit Sub
                End If

End Sub

Als cel "B59" is bereikt (die leeg is maar niet mee telt) moet er verder gezocht worden vanaf "B63" enz..
** De onderbreking is het einde van het (te printen) Blad en op rij 61 staat een nieuwe hoofding voor Blad 2 enz **
Hartelijk dank voor de hulp
Windows XP, Home, SP2, Intel Core2 Duo E6400 2.13Ghz, 1024 MB RAM, GeForce FX 7300LE, HDD:SATA II 160GB NTFS, AVG antivirus, Outlook Express

Offline SoftAid

  • Administrator
  • Ambassadeur
  • *****
  • Berichten: 20.202
  • Geslacht: Man
  • Nobody is perfect, not even me...
Re:VB zoeken naar laatste lege cel maar...
« Reactie #1 Gepost op: 26 november 2006, 11:06:11 »
Hallo Hombre,

Wat is de uiteindelijke bedoeling?

Je "MessageBox" boodschap maakt ons ook niet veel wijzer over het doel van je project.

Countif is geen optie??

:) SoftAid :)
Maximum grootte bijlagen vergroot naar 4 MB
Dubbelposten, het posten op verschillende forums van dezelfde vraag, dient op
voorhand gemeld te worden, met een link naar het topic op de andere site.
Overtreding van deze regel kan bestraft worden met verbanning !

Offline Hombre

  • Volledig lid
  • **
  • Berichten: 164
  • ¡Qué guapa!
Re:VB zoeken naar laatste lege cel maar...
« Reactie #2 Gepost op: 26 november 2006, 11:26:00 »
Hallo Hombre,

Wat is de uiteindelijke bedoeling?

Je "MessageBox" boodschap maakt ons ook niet veel wijzer over het doel van je project.

Countif is geen optie??

:) SoftAid :)

SoftAid

Het betreft hier een overzicht van uitgaven met vooraf ingestelde bladen. Deze hebben telkens een hoofding "in" het Excel blad zodat enkele rijen niet meetellen voor het zoeken naar de eerste lege cel. Indien dus blad 1 vol is moet gezocht worden op blad 2 maar dit is wel dezelfde sheet natuurlijk. Dit om snel naar de eerste lege cel te springen bij het invullen van een uitgave.
Mocht deze hoofding er niet zijn was het eenvoudig en liep de rij gewoon door maar deze kan niet weg wegens overzichtelijkheid van de sheet.

Hopelijk is dit iets duidelijker.
Windows XP, Home, SP2, Intel Core2 Duo E6400 2.13Ghz, 1024 MB RAM, GeForce FX 7300LE, HDD:SATA II 160GB NTFS, AVG antivirus, Outlook Express

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.284
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re:VB zoeken naar laatste lege cel maar...
« Reactie #3 Gepost op: 26 november 2006, 21:12:49 »
Hombre, Het is mij ook nog niet duidelijk. Ik heb je sheet qua ranges nagebouwd en daar vervolgens je codeblok in geplakt. Als alle cellen in je ranges gevuld zijn, werkt je code prima. Met het verwijderen van ranges 2 en 3 ging het mis...

Op zich kan ik je wel helpen (denk ik) maar kan je dan antwoord geven op de volgende vragen:
  • Wil je pas gaan afdrukken als alle 3 de ranges 'gevuld' zijn?
  • Is een range ten alle tijde VOLLEDIG gevuld (zijn er dus nooit ontbrekende regels)?
  • Zoek je soms alleen naar de laatste niet ingevulde cel zodat je met 1 druk op een knop daar naar toe gaat? (ik gok dat deze het is...  ;))
  • Kan het zijn dat je ranges 'gelijk' gevuld worden, of ga je echt van pagina 1 naar pagina 2 naar pagina enzovoorts...?
Groet, Leo
______________________________

Groet, Leo

Offline Hombre

  • Volledig lid
  • **
  • Berichten: 164
  • ¡Qué guapa!
Re:VB zoeken naar laatste lege cel maar...
« Reactie #4 Gepost op: 27 november 2006, 10:13:36 »
Beste Leo

Misschien nog iets verduidelijken,
Ik heb een sheet voor een kasboek, elke keer wordt één of meerdere "posten" ingevuld. Ik heb een macro gemaakt die controleert tot waar de sheet is ingevuld en zo één, twee of meerdere bladen afdrukt.
Hierdoor is het blad dus op voorhand onderverdeeld op de juiste positie "einde pagina" maar staan hier dus hooftitels tussen die ik niet in een koptekst of voettekst wil zetten.
De zoeklijn(kolom) naar de laatste cel, is dus ondebroken door deze titels en twee lege rijen want het is inderdaad de bedoeling naar de laatste lege cel te gaan door een knop om direct te kunnen invullen.

Als ik een controle kan maken waar de cursor staat ben ik er maar dit lukt me niet.
"If ActiveCell = [B59] Then" of
"If ActiveCell = Range ("B59") Then"
werkt niet!!!

Hopelijk is dit duidelijker anders hoor ik het wel
Hombre
Windows XP, Home, SP2, Intel Core2 Duo E6400 2.13Ghz, 1024 MB RAM, GeForce FX 7300LE, HDD:SATA II 160GB NTFS, AVG antivirus, Outlook Express

Offline buks

  • Ervaren lid
  • ***
  • Berichten: 313
  • Oplossing.be
Re:VB zoeken naar laatste lege cel maar...
« Reactie #5 Gepost op: 27 november 2006, 19:30:43 »
Indien het steeds dezelfde titels zijn die terug keren kan je de titels éénmaal bovenaan plaatsen en bij de pagina-instellingen dan "rijen bovenaan ieder blad" of "kolommen links op elk blad"  (tabblad "Blad") aanpassen.  Deze wordt dan op ieder blad afgedrukt en in het werkblad zelf moet je geen rekening meer houden met de titels die telkens tussenin geplaatst zijn.

Om gemakkelijk te werken op het scherm kan je de "titels blokkeren" (menu Venster).

groetjes
Win 7 Home - Intel Core i3 CPU 550 @ 3.20GHz - Basicnet XL - IE 9 - MS Office 2010 - Norton Internet Security 2012

Offline RedHead

  • Excel-Expert
  • Ambassadeur
  • *****
  • Berichten: 2.284
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re:VB zoeken naar laatste lege cel maar...
« Reactie #6 Gepost op: 27 november 2006, 21:43:28 »
Hombre, Ik heb een nieuwe procedure voor je geschreven die cel voor cel test of deze leeg is. Zo ja, verlaat de loop. Zo nee, test wat het adres is van de cel en kijk of je een 'sprongetje' moet maken.

Is dit wat je bedoelde?  ??? (zie bijlage)

Groet, Leo
______________________________

Groet, Leo

Offline Hombre

  • Volledig lid
  • **
  • Berichten: 164
  • ¡Qué guapa!
Re:VB zoeken naar laatste lege cel maar...
« Reactie #7 Gepost op: 28 november 2006, 05:51:36 »
Alweer hartelijk bedankt voor de hulp

buks: Dat zo elke titel op elk blad komt wist ik niet en is een goede hint. In dit geval is dit echter niet overzichtelijk omdat diegene die er moet mee werken dan niet goed ziet waar einde van het blad is en de titel is anders op blad 2, 3, enz..
Toch een heel goede tip voor de toekomst.

RedHead: Jouw systeem werkt wel maar.. Bij het zoeken springt de cursor over de lege rijen maar als je bv de onderste drie rijen leeg maakt gaat de cursor wel tot de laatste lege cel maar zegt dat blad vol is.

De oplossing had ik ondertussen ergens anders vandaan en is eigenlijk heel eenvoudig enkel de melding wanneer de cel 236 is bereikt werkt niet en heb ik dan maar weggelaten;

Range("B8").Select
Range("B" & Rows.Count).End(xlUp).Offset(1).Select

Hiermee is mijn probleem van de baan en zijn we weeral wat wijzer geworden ;-)
Hartelijk dank aan de brainstormers
Windows XP, Home, SP2, Intel Core2 Duo E6400 2.13Ghz, 1024 MB RAM, GeForce FX 7300LE, HDD:SATA II 160GB NTFS, AVG antivirus, Outlook Express

 


www.combell.com