Avatar billede petert Forsker
29. marts 2012 - 12:18 Der er 7 kommentarer og
1 løsning

Hjælp til at tilrette Excel vha. makro eller andet

Hej alle jeg får leveret et Excel ark som jeg skal udfylde og tilrette.
Der mangler desværre altid nogle formler, formatering af fonte og størelser osv.
Mit spørgs er
Kan jeg lave noget der ligger på min maskine og når jeg så åbner et nyt ark kører jeg en makro eller andet som
eks.
1.tager et foruddifineret område og sætter skrifttype/og størelse
2.Indsætter en bestemt værdi i en celle
3.indsætter en formel i en bestemt celle.+ en anden i en anden celle.
Kan dette lade sig gøre?
MVH
Petert
Avatar billede kim1a Ekspert
29. marts 2012 - 12:53 #1
Hej Petert

Alle de ting du nævner er bestemt mulige, for at være en "standard makro" skal du dog sikre dig enten
1) at det er samme områder hver gang
eller
2) at makroen er så kompleks at den kan genkende noget - således den kan identificere området den skal indsætte i/ændre på.

Vi skal dog bruge noget konkret for at kunne komme med eksempler til dig.

Som et alternativ kan jeg fortælle at jeg tit selv har lavet en "skal" - altså et ark som henter data fra de ark du får leveret, således at tingene altid passer ind. Afhængig af hvad du får leveret kan det være nok at rette få simple henvisninger via data->rediger kæder
Avatar billede petert Forsker
29. marts 2012 - 13:12 #2
Hej kim1a
Tak for dit indlæg.
Arket jeg for tilsendt er nyt hver gang(uden makroen)
spørgsmål Kan man lave en makro der ligger på maskinen eller ligger en makro altid i selve Excel mappen ?

Det der skal ske er
1. området H11 til K34 skal have ophævet flettede celler
2. Kolonne H skal formateres til tt:mm:ss
3.Kolonne I formateres som standard
4.i Celle H11 indsættes 10:00:00
5.I Celle H12 indsættes formlen
=HVIS(SEKUND(VENSTRE(L11;8))<=48;RUND.OP(((VENSTRE(L11;8))+H11)*24/(24/(24*60));0)*((24/(24*60))/24);RUND.OP(((VENSTRE(L11;8))+H11+"00:00:12")*24/(24/(24*60));0)*((24/(24*60))/24))
6.I celle I11 indsættes formlen =HVIS(H11<>0;":00";"")
7.I område række 11 til 34 sættes skrifttype til ariel 9 punkt
MVH
Petert
Avatar billede kim1a Ekspert
29. marts 2012 - 13:27 #3
Man kan ligge makroen i dit Excel-program som standard, eller også eksportere den til en fil og så importere den fra gang til gang.

De fleste af dine operationer er forholdsvis nemme - jeg vil foreslå at du starter med at sætte makro-optageren til, og så "gør" alle dine øvelser, så skulle den gerne fange det hele.

Jeg tror det er bedre end at jeg starter med at optage selvsamme - så kan du evt. få finpudsning af makroen når den virker for dig, eller komme med de udfordringer den giver.
Avatar billede petert Forsker
29. marts 2012 - 13:37 #4
Helt fint det prøver jeg.
MVH
Petert
Avatar billede store-morten Ekspert
29. marts 2012 - 15:15 #5
Læs om Personlig makroprojektmappe.

Vælg den projektmappe, som du vil gemme makroen i, på listen Gem makro i.
Tip!    Hvis du ønsker, at en makro skal være tilgængelig, hver gang du bruger Excel, skal du markere Personlig makroprojektmappe. Når du vælger Personlig makroprojektmappe, oprettes der en skjult personlig makroprojektmappe (Personal.xlsb)


Sakset fra:
http://office.microsoft.com/da-dk/excel-help/oprette-eller-slette-en-makro-HP010014111.aspx#BMrecordmacro
Avatar billede store-morten Ekspert
14. april 2012 - 12:25 #6
Prøv denne:
Sub SætFormat()
'1. området H11 til K34 skal have ophævet flettede celler
    Range("H11:K34").UnMerge
   
'2. Kolonne H skal formateres til tt:mm:ss
    Columns("H:H").NumberFormat = "h:mm:ss"
   
'3.Kolonne I formateres som standard
    Columns("I:I").NumberFormat = "General"
   
'4.i Celle H11 indsættes 10:00:00
    Range("H11").FormulaR1C1 = "10:00:00"
   
'5.I Celle H12 indsættes formlen
'=HVIS(SEKUND(VENSTRE(L11;8))<=48;RUND.OP(((VENSTRE(L11;8))+H11)*24/(24/(24*60));0)*((24/(24*60))/24);RUND.OP(((VENSTRE(L11;8))+H11+"00:00:12")*24/(24/(24*60));0)*((24/(24*60))/24))
    Range("H12").FormulaR1C1 = "=IF(SECOND(LEFT(R[-1]C[4],8))<=48,ROUNDUP(((LEFT(R[-1]C[4],8))+R[-1]C)*24/(24/(24*60)),0)*((24/(24*60))/24),ROUNDUP(((LEFT(R[-1]C[4],8))+R[-1]C+""00:00:12"")*24/(24/(24*60)),0)*((24/(24*60))/24))"

'6.I celle I11 indsættes formlen =HVIS(H11<>0;":00";"")
    Range("I11").FormulaR1C1 = "=IF(RC[-1]<>0,"":00"","""")"
   
'7.I område række 11 til 34 sættes skrifttype til ariel
    Rows("11:39").Font.FontStyle = "Arial"
'7.I område række 11 til 34 sættes skrifttype til 9 punkt
    Rows("11:39").Font.Size = 9
End Sub


Hvis du vil have lagt din "SætFormat" kode ind i din 'Personlig makromappe'
Så skal tungen holdes lige i munden ;-)

Menuen Udvikler -->
Menuen Kode --> "Indspil makro"
Vigtigt! 'Gem makro i:' --> ændres til "Personlig makromappe" --> OK
Klik på en tilfældig celle --> Menuen Kode --> "Stop indspilling"

Tryk alt+F11
Under VBAProject(PERSONAL.XLSB) --> 'Modules' --> dobbeltklik på 'Module1' i kassen vil der stå noget med:

Sub Makro1()
'
' Makro1 Makro
'

'
    Range("C7").Select
End Sub


Erstat det med koden fra før. Luk og Gem alt.

NU... skulle det virker når du åbner et "Nyt" ark.


Husk:
Efter at have indspillet makro til den 'Personlig makromappe' sæt tilbage til 'Denne projektmappe'

Menuen Udvikler -->
Menuen Kode --> "Indspil makro"
Vigtigt! 'Gem makro i:' --> ændres igen til "Denne projektmappe" --> Luk på det røde kryds.

Ellers vil alle fremtidige indspillede makroer gemmes i den 'Personlig makromappe'
Avatar billede petert Forsker
08. maj 2012 - 08:48 #7
Hej Store-Morten
Tak for din hjælp og takt for din info om alle mine åben spørgsmål.Jeg har nu ryttet op i Dem.

Vedr.dette spørgsmål.
Det du har hjulpet med er rigtigt godt og meget tidsbesparende.
Efter at have brugt koden i redigeringen af 15 programmer(á 30 Min), viser det sig at man sparer ca. 75% af tiden til at producerer dokumentationen.(+ altid 100% rigtig tids sætning)
Derfor skulle jeg hilse fra brugeren og sige mange tak for hjælpen.
MVH
Petert
Avatar billede store-morten Ekspert
08. maj 2012 - 16:38 #8
Hej Petert
Velbekomme, det er jo altid spændene, om de forslag man kommer med, kan bruges :-)

Så mange tak for den fine tilbagemelding.
mvh.
  Morten
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester