Avatar billede madsanthon Nybegynder
07. april 2004 - 23:25 Der er 38 kommentarer og
1 løsning

Excel navngiver dokumentet automatisk??

Hvordan får jeg Excel til at gemme/navngive dokumentet som en tekst og/eller et tal, der står i en bestemt box?

Eks:
I A1 står der Januar.

Når jeg gemmer filen ønsker jeg, at den automatisk kommer til at hedde Januar!?

Hvilken kommando skal der skrives i A1?

Er der evt. en anden måde at gøre det på?

På forhånd tak
Mads
Avatar billede steen_hansen Forsker
07. april 2004 - 23:37 #1
Det er første gang du vil gemme dokumentet, at Excel automatisk skal tage navnet/tallet fra celle A1 og gemme det som NavnOgEllerTal.xls?
Avatar billede steen_hansen Forsker
07. april 2004 - 23:38 #2
Så skal du nok lave en makro, som du knytter til en kommandoknap og benytter den, når du vil gemme.
Avatar billede Slettet bruger
07. april 2004 - 23:44 #3
Prøv med denne makro.
1. Tryk ALT + F11
2. Indsæt i arkets kodemodul under "ThisWorkbook"

Hvis du ikke vil se meddelelser om at du er igang med at overskrive
en gammel version af filen kan du udkommentere linierne
med Application.DisplayAlerts.

-----------------
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

On Error GoTo Fejl

Dim path As String
path = "C:\"

'Application.DisplayAlerts = False

ActiveWorkbook.SaveAs path & [A1] & ".xls"
ThisWorkbook.Saved = True

'Application.DisplayAlerts = True

Fejl:
    MsgBox "Arket blev ikke gemt !"

End Sub
-----------------
Avatar billede madsanthon Nybegynder
07. april 2004 - 23:49 #4
Nej, det er et fakturering program jeg har lavet. Jeg ønsker at gemme alle mine faktura med det tildelte faktura nummer. Jeg har altså lavet en skabelon, som jeg vil tage udgangspunkt i hver gang jeg skal skrive en faktura. Fakturannmmeret står i E5.
Avatar billede Slettet bruger
08. april 2004 - 00:00 #5
Hvis fakturanummeret står i E5, skal du erstatte:

ActiveWorkbook.SaveAs path & [A1] & ".xls"
med
ActiveWorkbook.SaveAs path & [E5] & ".xls"
Avatar billede steen_hansen Forsker
08. april 2004 - 00:01 #6
Har blackadder ikke lavet den rigtigt? Du skal bare ændre

ActiveWorkbook.SaveAs path & [A1] & ".xls"

til

ActiveWorkbook.SaveAs path & [E5] & ".xls"

Jeg tager ikke æren for dit arbejde, blackadder
Avatar billede steen_hansen Forsker
08. april 2004 - 00:01 #7
Sorry :o)
Avatar billede madsanthon Nybegynder
08. april 2004 - 00:07 #8
Tak for din hurtige respons!  Det vil jeg prøve.
Avatar billede Slettet bruger
08. april 2004 - 00:07 #9
steen_hansen >> Ingen problemer :-)

Ideen er at Workbook_BeforeSave makroen erstatter den normale save funktion, dog kun i forbindelse med det pågældende ark.

Den vil dog brokke sig hvis den ikke kan finde stien dvs. C:\
Avatar billede madsanthon Nybegynder
08. april 2004 - 00:09 #10
Tak for Jeres god svar. Jeg havde regnet skiftet fra A1 til E5 ud, men tak alligevel.
Avatar billede madsanthon Nybegynder
08. april 2004 - 00:11 #11
Problemet er som altid at jeg har Mac og derfor ingen C: . Skal i stedet bruge :Macintosh HD:Users:powerbook:Desktop:
Avatar billede steen_hansen Forsker
08. april 2004 - 00:20 #12
blackadder >> Fino :o)

madsanthon: Det var blackadders gode svar, ikke mit :o)
Avatar billede madsanthon Nybegynder
08. april 2004 - 00:23 #13
Den giver mig en erro på :
Fejl:
    MsgBox "Arket blev ikke gemt !"

Og farver :

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

gult?!
Hvad skyldes det?
Avatar billede Slettet bruger
08. april 2004 - 00:26 #14
Jeg glemte at nævne at du skal rette i stien, dvs.
erstatte:
path = "C:\"

med en gyldig mappe på din egen maskine.
Avatar billede madsanthon Nybegynder
08. april 2004 - 00:32 #15
Virker det på din/Jeres computer?
Avatar billede steen_hansen Forsker
08. april 2004 - 00:33 #16
Det virker fint hos mig
Avatar billede Slettet bruger
08. april 2004 - 00:37 #17
Det virker også hos mig.

Prøv at gå ind i kodemodulet, marker "SaveAs" i linien
ActiveWorkbook.SaveAs path & [E5] & ".xls"

og tryk F1 for at aktivere hjælpefunktionen.

Kig efter et Mac-specifikt eksempel.
Avatar billede madsanthon Nybegynder
08. april 2004 - 00:54 #18
Jeg kan desværre heller ikke få det til at virke på min PC.

Jeg dobbelt klkker på ThisWorkbook efter at have trykket Alt-F11

I det vindue, der kommer frem skriver jeg:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
On Error GoTo Fejl
Dim path As String
path = "Macintosh HD:Users:powerbook:Desktop:BarKIT:Fakturer"
'Application.DisplayAlerts = False
ActiveWorkbook.SaveAs path & [E5] & ".xls"
ThisWorkbook.Saved = True
'Application.DisplayAlerts = True
Fejl:
    MsgBox "Arket blev ikke gemt !"
End Sub

og på PC´en:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
On Error GoTo Fejl
Dim path As String
path = "C:"
'Application.DisplayAlerts = False
ActiveWorkbook.SaveAs path & [E5] & ".xls"
ThisWorkbook.Saved = True
'Application.DisplayAlerts = True
Fejl:
    MsgBox "Arket blev ikke gemt !"
End Sub

Hvadend jeg skriver i E5 og ligegyldig hvordan jeg vælger at gemme (Save el. Save As),
gemmes mit dokument ikke med den titel, der står i E5!?
Avatar billede Slettet bruger
08. april 2004 - 00:58 #19
Jeg tror du mangler en backslash i din path.
prøv at erstatte:
path = "C:"
med
path = "C:\"
Avatar billede Slettet bruger
08. april 2004 - 01:03 #20
I Mac versionen, prøv at erstatte:
path = "Macintosh HD:Users:powerbook:Desktop:BarKIT:Fakturer"
med
path = "HD:Users:powerbook:Desktop:BarKIT:Fakturer"
Avatar billede madsanthon Nybegynder
08. april 2004 - 01:05 #21
Ja godt set! Jeg har i midlertid lavet backslash i testen på min PC. Men man kan ikke lave \ på Mac. Der skal stien hedde noget helt andet. Det har jeg styr på.
Avatar billede madsanthon Nybegynder
08. april 2004 - 01:06 #22
Ok tak igen
Avatar billede madsanthon Nybegynder
08. april 2004 - 01:07 #23
Jeg får en:

Compile error:

Syntax error
Avatar billede Slettet bruger
08. april 2004 - 01:09 #24
På hvilken linie ?
Avatar billede madsanthon Nybegynder
08. april 2004 - 01:10 #25
Og:
Microsoft Visual Basic
This command will stop the debugger.

Når jeg vil gemme
Avatar billede Slettet bruger
08. april 2004 - 01:14 #26
Prøv at indsætte linien

Exit Sub

efter linien

ThisWorkbook.Saved = True

Dvs. den burde se sådan ud nu:

---------------------
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
   
    On Error GoTo Fejl
   
    Dim path As String
    path = "C:\"
   
    'Application.DisplayAlerts = False
   
    ActiveWorkbook.SaveAs path & [E5] & ".xls"
    ThisWorkbook.Saved = True
    Exit Sub
   
    'Application.DisplayAlerts = True
   
Fejl:
        MsgBox "Arket blev ikke gemt !"

End Sub
---------------------
Avatar billede madsanthon Nybegynder
08. april 2004 - 01:15 #27
Så farver den øverste linie gul:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Avatar billede madsanthon Nybegynder
08. april 2004 - 01:20 #28
Ved at sætte ovenstående ind får jeg følgende besked

Compile erroe:

Expected Sub, Function, or Property
Avatar billede Slettet bruger
08. april 2004 - 01:33 #29
Ville det være et problem hvis vi flyttede koden til at blive aktiveret ved tryk på en knap på arket istedet for ?

Jeg har på fornemmelsen at .SaveAs kommandoen kalder ikke harmonerer med WorkBook_BeforeSave event makroen.
Avatar billede madsanthon Nybegynder
08. april 2004 - 01:39 #30
Nej alt er kærkomment....!
Avatar billede Slettet bruger
08. april 2004 - 01:45 #31
Ok, fint.

1.  I Menuen:
    View -> Toolsbars -> Control Toolbox
2.  Vælg en CommandButton, og placer den på arket et passende sted.
3.  Dobbeltklik på knappen og indsæt nedenstående koden imellem
    Private Sub CommandButton1_Click()
    og
    End Sub

Dvs:
-------------

Private Sub CommandButton1_Click()
    On Error GoTo Fejl
   
    Dim path As String
    path = "C:\"
   
    'Application.DisplayAlerts = False
   
    ActiveWorkbook.SaveAs path & [E5] & ".xls"
    ThisWorkbook.Saved = True
    Exit Sub
   
    'Application.DisplayAlerts = True
   
Fejl:
      MsgBox "Arket blev ikke gemt !"

End Sub

-------------
Avatar billede Slettet bruger
08. april 2004 - 01:45 #32
Vigtigt..
Husk at slette koden fra ThisWorkbook.
Avatar billede madsanthon Nybegynder
09. april 2004 - 10:55 #33
Jeg har ikke fået det til at virke. Men du skal naturligvis have pointene for din gode indsats. Tak for hjælpen.
Avatar billede Slettet bruger
09. april 2004 - 13:51 #34
Jeg beklager at det ikke virker. Det virker fint på min egen (PC) version af Excel.

Hvad har du har fået af fejlmeddelelser ?

Jeg vil opfordre dig til at oprette spørgsmålet igen (jeg afleverer gerne point). Det kan være at der er andre der kan finde en løsning.
Avatar billede madsanthon Nybegynder
09. april 2004 - 14:13 #35
Jeg prøver at oprette spørgsmålet igen.
Avatar billede madsanthon Nybegynder
09. april 2004 - 14:15 #36
Vil du evt. maile mig din fil?
Avatar billede Slettet bruger
09. april 2004 - 14:17 #37
Jep, hvad er din e-mail adresse ?
Avatar billede madsanthon Nybegynder
09. april 2004 - 14:19 #38
mange tak!!

104@city.dk
Avatar billede Slettet bruger
09. april 2004 - 14:23 #39
Koden for knappen er i kodemodulet for "Sheet1"
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
Stort udvalg af Excel kurser til alle niveauer og jobfunktioner

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