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

malawi

Gebruiker
Lid geworden
10 mrt 2009
Berichten
169
Hallo,

Ik zoek op dit moment met onderstaande Pop-Up in mijn werkblad welke ik bij een vorige vraag als oplossing kreeg. Echter loop ik nu tegen een 2 tal probleempjes aan. Is hier een oplossing voor.

Code:
Sub M_snb()
   Application.Dialogs(130).Show activecell
End Sub

1. Nu neemt hij het getal bijvoorbeeld "11.000" niet over in het zoekvenster met de duizend tekens. Dus "11000" Hier wordt niets op gevonden terwijl dit getal wel aanwezig is.

2. Tevens kan ik niet op waarden zoeken. in deze pop-up heb ik deze keuze niet maken zoals in het standaard zoekscherm.

Alvast bedank

Ewald
 
Werkt hier gewoon goed, dus plaats een voorbeeld document.
 
Probeer eens:
Code:
Sub M_snb()
   Application.Dialogs(130).Show activecell.Text
End Sub
 
Het neemt nu inderdaad de duizend tekens mee.

Het getal met duizend tekens is een uitkomt van een formule. Ik moet bij de normale zoek functie "CTRL F" waarde selecteren om het juiste tal te kunnen zoeken. Zie bijlage.

De pop-up via de macro heb ik deze mogelijkheid niet.

Ik heb de zoek functie in een macro opgenomen omdat ik eerst het blad vrij moet geven en na het zoeken weer moet beveiligen. De cel die ik zoek is normaal geblokkeerd.


Gr. Ewald
 

Bijlagen

  • Aantekening 2020-08-20 100119.jpg
    Aantekening 2020-08-20 100119.jpg
    36,6 KB · Weergaven: 45
Verschil kan ook zitten in het gebruikte datatype.
Daarom vroeg ik om een voorbeeld documentje, zodat we kunnen zien hoe of wat.
 
Het is dus van belang dat ik op "Waarde" kan zoeken.

Ewald
 
Zo doe je dat:
Code:
Sub ZoekJKP()
    Range("A1").Find What:="*", After:=ActiveCell, LookIn:=xlValues
    Application.CommandBars("Edit").FindControl(ID:=1849, recursive:=True).Execute
End Sub
 
Dit werkt helaas niet in mijn opzet.

Onderstaande werkt goed, alleen ik op waarde zoeken lukt niet omdat ik deze pop-up de keuze niet heb om op "Waarde" te zoeken.

Code:
Sub M_snb()
   Application.Dialogs(130).Show activecell.Text
End Sub
 
Wat werkt er niet precies? Ik heb het in diverse Excel versies met zowel Engels als Nederlandse taal instelling getest. Overigens, jouw code toont het vervangen venster en bij zoeken en vervangen zoek je sowieso altijd alleen in formules, dan kan je niet kiezen voor zoeken op waarden. Vandaar mijn code. De eerste regel is bedoeld om het venster in te stellen op zoeken in waarden ipv formules.
 
Jan-Karel,

Ik weet niet wat er misgaat, maar kun je het voorbeeld bestand hierop aanpassen en uploaden.

Alvast bedankt,

Ewald
 
Misschien handiger als jij jouw bestand waar het niet op werkt hier plaatst (ontdaan van gevoelige info), ik heb namelijk alleen maar die code en die werkt in ieder willekeurig Excel bestand
 
Ik heb het voorbeeld toegevoegd waar het ook niet werkt.

Mijn kennis van VBA is helaas klein, dus zal het vast verkeer hebben geïnterpreteerd.

Bij voorbaat dank,

Ewald
 

Bijlagen

Vreemd. Bij mij werkt het ook niet, tenzij ik er dit van maak:
Code:
Sub ZoekJKP()
    Range("A1").Find What:="*", LookIn:=xlValues
    Application.CommandBars("Edit").FindControl(ID:=1849, recursive:=True).Execute
End Sub
Het weer beveiligen van je werkblad zorgt er overigens voor dat gevonden cellen niet kunnen worden geselecteerd. Dat zie je als je op volgende klikt (dan gebeurt er niets), maar als je op Alles drukt krijg je wel een lijst met gevonden cellen. Wil je dat Excel gevonden cellen kan selecteren, dan moet je de betreffende optie bij het beveiligen aanzetten. Werkende code:
Code:
Sub ZoekJKP()
    ActiveSheet.Unprotect Password:="0000"
    
    Range("A1").Find What:="*", LookIn:=xlValues
    Application.CommandBars("Edit").FindControl(ID:=1849, recursive:=True).Execute
    
    ActiveSheet.Protect Password:="0000"
    ActiveSheet.EnableSelection = xlNoRestrictions
End Sub
 
Het werkt nu ook in mijn origineel bestand.

Het is alleen prettig dat het de tekst in de geselecteerde cel overneemt in het zoekvenster, zoals in de oude macro in mijn voorbeeld bestand.

Is dit nog aan te passen. i.p.v. "*"
Code:
Show ActiveCel
l


Ewald
 
Ik heb "Value" vervangen door "text". Nu neemt het ook de duizend teken weer mee.

Het is opgelost. dank je wel.

Ewald
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan