howieD Skrevet 24. mars 2010 Del Skrevet 24. mars 2010 Heisann, Jeg trenger hjelp til office word 2007. Det gjelder at jeg har en 20 sifret tallrekke, og bare de 5 første, og 5 siste sifrene skal vises. De 10 i mellom skal erstattes med tegnet * Eksempel original: 12345123451234512345 Ønsket resultat: 12345**********12345 Hvordan gjør man dette? jeg er helt lost Og igjen, jeg er ikke i Excel, men i Word! Lenke til kommentar
Mr. Hermonella Skrevet 24. mars 2010 Del Skrevet 24. mars 2010 Tror ikke helt at jeg forstår hva du mener:S Er det ikke bare og skrive 10 siffrene som wet * tegn Lenke til kommentar
howieD Skrevet 24. mars 2010 Forfatter Del Skrevet 24. mars 2010 Tror ikke helt at jeg forstår hva du mener:S Er det ikke bare og skrive 10 siffrene som wet * tegn problemet at originaltallene hentes ut fra et kjernesystem, og kopieres over i Word som da sendes ut til de som skal se dokumentet. De 10 midterste sifrene kan ikke offentliggjøres for de som skal lese det, så derfor trenger jjeg en makro e.l som gjenkjenner de 20 sifrene, og erstatter de 10 midterste tallene. Jobben manuelt tilsvarer flerfoldige timer i uken, og det hadde vært utrolig nyttig å ha en automatisert prosess som tar for seg dette Lenke til kommentar
The Avatar Skrevet 24. mars 2010 Del Skrevet 24. mars 2010 Skal leserane lese dokumentet digitalt eller som papirutgave? Om dei berre skal lese det som papirutgave så kan kanskje det å legge ein firkant over den delen av nummeret som ikkje skal visast? Då vil berre dei delane av nummeret som stikk ut på høgre og venstre side av firkanten visast. Lenke til kommentar
helsten2 Skrevet 24. mars 2010 Del Skrevet 24. mars 2010 (endret) De 10 midterste sifrene kan ikke offentliggjøres for de som skal lese det, så derfor trenger jeg en makro e.l som gjenkjenner de 20 sifrene, og erstatter de 10 midterste tallene. Jeg er ingen kløpper på VB, men det skulle vel bli noe sånt: ' Aner ikke hvordan du leser inn tallene, men jeg antar at du klarer å få de inn ' i en tekst variabel ved navn OriginalTall (Dim OriginalTall) ResultatTall="00000000000000000000" ' Initier med en passende verdi TallLengde = Len(OriginalTall) ' Enkel sjekk på at vi har riktig antall siffer If TallLengde = 20 Then First5 = Left(OriginalTall, 5) Last5 = Right(OriginalTall, 5) ResultatTall = First5 + "**********" + Last5 End If ' ResultatTall er nå enten "00000000000000000000" eller "nnnnn**********nnnnn" Hvis du har et dokument på N sider med M forekomster av forskjellige tallrekker (tilfeldig spredt rundt i dokumentet) som du først ønsker å finne og deretter re-formatere så er jo det en litt større og mer komplisert makro ... ... men det er mulig Endret 24. mars 2010 av helsten2 Lenke til kommentar
Harald Staff Skrevet 24. mars 2010 Del Skrevet 24. mars 2010 Hei Jeg vet nærmest ingenting om Words objektmodell. Men dette ser ut til å funke: Sub FjernSifre() Dim mot Dim X As String Selection.WholeStory For Each mot In Selection.Words X = Trim(CStr(mot)) If X Like "####################" Then Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = X .Replacement.Text = Left(X, 5) & String(10, "*") & Right(X, 5) .Format = False .MatchCase = False End With Selection.Find.Execute Replace:=wdReplaceAll End If Next End Sub Hvis dette virker for deg og det for alvor sparer dere for timer jobb pr uke, gi noen kroner til en fritt valgt veldedighet HTH. Beste hilsen Harald Lenke til kommentar
howieD Skrevet 24. mars 2010 Forfatter Del Skrevet 24. mars 2010 Hei Jeg vet nærmest ingenting om Words objektmodell. Men dette ser ut til å funke: Sub FjernSifre() Dim mot Dim X As String Selection.WholeStory For Each mot In Selection.Words X = Trim(CStr(mot)) If X Like "####################" Then Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = X .Replacement.Text = Left(X, 5) & String(10, "*") & Right(X, 5) .Format = False .MatchCase = False End With Selection.Find.Execute Replace:=wdReplaceAll End If Next End Sub Hvis dette virker for deg og det for alvor sparer dere for timer jobb pr uke, gi noen kroner til en fritt valgt veldedighet HTH. Beste hilsen Harald Dette gjorde meg veldig glad! Dette fungerer kjempefint! Lover å putte litt penger i røde kors bøtta vår på jobb! Tusen tusen takk!! Lenke til kommentar
Harald Staff Skrevet 24. mars 2010 Del Skrevet 24. mars 2010 Så fint. Takk for tilbakemelding. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå