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

Vervangen deel formule met macro

  • Onderwerp starter Onderwerp starter mtyn
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

mtyn

Gebruiker
Lid geworden
4 mei 2010
Berichten
8
Hallo allemaal,

Voor een leuke klus van een collega moet ik voor ongeveer 50 excel documenten o.a. een formule aanpassen.
Het gaat om de formule: =AFRONDEN(F39/100*5;0)

Kolom F moet kolom E worden, en /100*5 moet verwijderd worden. Dat lukt mij met ctrl+h, en dan AFRONDEN(F laten vervangen door AFRONDEN(E. Vervolgens /100*5 te vervangen door niets.

Nu wil ik dit echter graag met een macro doen. Als ik de opneemfunctie gebruik voor het eerste gedeelte, komt deze code eruit, maar bij het uitvoeren gebeurt er niets:

Code:
    Columns("N:N").Select
    Selection.Replace What:="AFRONDEN(F", Replacement:="AFRONDEN(E", LookAt:= _
        xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

Ik heb al een paar topics hierover gevonden op het forum, maar ik krijg het niet voor elkaar om deze werkend te krijgen.

Wat oh wat doe ik verkeerd? Alvast bedankt!
 
Als ik de opneemfunctie gebruik voor het eerste gedeelte, komt deze code eruit, maar bij het uitvoeren gebeurt er niets:
Een gok: tijdens het opnemen van de macro vervang je reeds F door E. Wanneer je achteraf de macro uitvoert, vindt hij geen F's meer om te vervangen?
 
Bedankt voor de tip, maar dat is helaas niet het geval. Ik heb even een test bestand gemaakt, zodat het wat duidelijker is:
Bekijk bijlage Vervangen.xls

Het gaat er dus in eerste instantie om dat kolom F wordt vervangen door kolom E. Als dat lukt zou de tweede stap, het verwijderen van de berekening, ook moeten lukken lijkt mij.

Zie ik nou iets over het hoofd, of ligt het ergens anders aan? (macros staan trouwens wel ingeschakeld :))
 
hallo mtyn

je hebt een taal probleem
als je van uit vb je macro draait wordt er wel uit gevoerd wat jij wil.
maar de formule staat in het engels dus afronden wordt round
als je in je macro afronden verwijderd:
Selection.Replace What:="AFRONDEN(F", Replacement:="AFRONDEN(E", LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
wordt dan:
Selection.Replace What:="(F", Replacement:="(E", LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
dan werkt het wel
groet sylvester
 
Juist, logisch, maar nooit bij nagedacht. Bedankt hiervoor!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan