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

Zoeken en vervangen

Status
Niet open voor verdere reacties.

Jos the Boss

Gebruiker
Lid geworden
28 jul 2010
Berichten
57
Beste mensen,

Ik heb een werkblad waarbij elke dag gegevens worden aangevuld uit andere werkbladen.
Nu heb ik iedere keer kolommen waar "0:00:00" in meerdere cellen staat in andere cellen staat een tijdsaanduiding, met zoeken en vervangen is dit in één keer weg. Aangezien dit dagelijks gebeurd heb ik dit in een macro opgenomen. De code die erin staat is:

Cells.Select
Selection.Replace What:="0:00:00", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Dit is op de standaard wijze opgenomen. Helaas heb ik geen resultaat als de macro de "0:00:00" probeert weg te halen.

Deze macro doet veel meer maar dat werkt allemaal prima.

Is er iemand die mij kan helpen om de macro zijn werk te laten doen.

Alvast bedankt,
Jos
 
Ik denk dat het alleen in weergave dat getal weergeeft??

waarschijnlijk staat in de cel zelf gewoon een nul, of heb ik het mis?
 
Als ik de eigenschappen van de cel op standaard zet staat er inderdaad een nul. De eigenschappen staan echter op Tijd in de opmaak 37:50:55.
Zoeken naar alleen een nul levert alleen succes op als ik de opmaak naar standaard zet.
In het ergste geval moet ik de kolommen waar het omgaat eerst de eigenschappen aanpassen naar standaard, dan zoeken en vervangen en daarna de eigenschappen opnieuw instellen. Het gaat om 30 kolommen die niet allemaal naast elkaar staan. Dit maakt de macro trager en is een omweg die niet de schoonheidsprijs verdiend..
 
Jos,

Deze zoekt naar een nul en voorkomt een gemarkeerd blad in beeld.

Code:
Sub nul_weg()
Application.ScreenUpdating = False
    Cells.Select
    Selection.Replace What:="0", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows
    Selection.Replace What:="12:: AM", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows
    Range("A1").Select
Application.ScreenUpdating = True
End Sub
Kijk even of dit doet wat je wilt.
 
Rob,

Bedankt voor je reactie. Jjouw oplossing werkt deels. Aangezien je LookAt:=xlPart gebruikt worden ook andere nullen weggehaald en dat is nu net niet de bedoeling. Als ik LookAt:=xlPart aanpas naar LookAt:=xlWhole gebeurd er weer helemaal niets.

Groet,
Jos
 
Code:
Sub tst()
Cells.Replace What:=TimeValue("0:00:00"), Replacement:="", LookAt:=xlWhole, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan