Avatar billede tynde Nybegynder
26. august 2003 - 16:08 Der er 11 kommentarer og
2 løsninger

Gem som, med dato og celleværdier

Er det muligt at gemme i nyt filnavn, som indeholder: Dato og indholdet af forskellige celler. F.eks. A1:usernavn B1:IDAG() C1: Kundenavn D1: Sagsnavn E1: Tilbudsnummer osv.

Jeg startede med at lave en sammenkædning, men datoen blev lavet om til et femcifret tal.

Kan vba evt. lave det let og elegant?
Avatar billede kabbak Professor
26. august 2003 - 16:20 #1
Public Sub GemSom()
ThisWorkbook.SaveAs (Range("A1") & Range("B1"))' osv.
End Sub
Avatar billede jkrons Professor
26. august 2003 - 16:22 #2
Eller:

Sub GemSom()
Filnavn = Range("a1") & Date & Range("c1") & Range("d1") & Range("E1")
Debug.Print Filnavn
ActiveWorkbook.SaveAs Filnavn
End Sub

Så behøver du ikke at tænke på formatering af datoen.
Avatar billede tynde Nybegynder
26. august 2003 - 16:23 #3
Hvad så med det der med at datoen blive lavet om til et femcifret tal?
Og kan jeg få brugernavnet med automatisk?
Avatar billede kabbak Professor
26. august 2003 - 16:27 #4
Public Sub GemSom()
Dim wshNetwork
Set wshNetwork = CreateObject("WScript.Network")
ThisWorkbook.SaveAs  = wshNetwork.UserName & Date & Range("c1") & Range("d1") & Range("E1")
End Sub
Avatar billede tynde Nybegynder
26. august 2003 - 16:30 #5
Tak for hurtigt svar.
I får begge point.
Kan man vælge hvilken mappe filen skal ligge i?
Bare lige et tillægsspørgsmål.
Avatar billede kabbak Professor
26. august 2003 - 16:31 #6
ThisWorkbook.SaveAs  = wshNetwork.UserName & Date & Range("c1") & Range("d1") & Range("E1")

fjern lige = i ovenstående, det er en fejl
Avatar billede jkrons Professor
26. august 2003 - 16:35 #7
I min løsning kan du sætte stien ind i filnavnet.
Avatar billede jkrons Professor
26. august 2003 - 16:36 #8
Fx Filnavn = "C:\Dokumenter\" & Range("a1") & Date & Range("c1") & Range("d1") & Range("E1")
Avatar billede thor.ostergaard Nybegynder
26. august 2003 - 16:47 #9
Jeg bruger også ofte denne:
With Dialogs(xlDialogSaveAs)
    .Name = "C:\Dokumenter\" & Range("a1") & Date & Range("c1") & Range("d1") & Range("E1")
    .Show
End With

Der blot åbner gemsom dialogen, men lader brugeren selv gøre arbejdet færdigt.
Avatar billede kabbak Professor
26. august 2003 - 16:55 #10
tjek lige denne

Public Sub GemSom()
Dim wshNetwork
Set wshNetwork = CreateObject("WScript.Network")
  fileTosave = wshNetwork.UserName & "_" & Date & "_" & Range("c1") & "_" & Range("d1") & "_" & Range("E1")
Flt = "Excel mappe(*.xls),*.xls,"
    Flt = Flt & "Print-filer (*.prn),*.prn,"
    Flt = Flt & "Tekst-filer(*.txt),*.txt"
    Titel = "Gem Bilag Som!"
    Filnavn = Application.GetSaveAsFilename(fileTosave, Flt, 1, Titel)
    If Filnavn = False Then GoTo Afbryd
    If fileTosave <> False Then
    ActiveWorkbook.SaveAs Filnavn
    End If
Afbryd:
End Sub
Avatar billede tynde Nybegynder
26. august 2003 - 17:03 #11
Kan man få datoen til at gemmes som f.eks: 2003-08-26
Avatar billede kabbak Professor
26. august 2003 - 17:08 #12
sådan

Public Sub GemSom()
Dim wshNetwork
Set wshNetwork = CreateObject("WScript.Network")
  fileTosave = wshNetwork.UserName & "_" & Format(Date, "yyyy-mm-dd") & "_" & Range("c1") & "_" & Range("d1") & "_" & Range("E1")
Flt = "Excel mappe(*.xls),*.xls,"
    Flt = Flt & "Print-filer (*.prn),*.prn,"
    Flt = Flt & "Tekst-filer(*.txt),*.txt"
    Titel = "Gem Bilag Som!"
    Filnavn = Application.GetSaveAsFilename(fileTosave, Flt, 1, Titel)
    If Filnavn = False Then GoTo Afbryd
    If fileTosave <> False Then
    ActiveWorkbook.SaveAs Filnavn
    End If
Afbryd:
End Sub
Avatar billede tynde Nybegynder
26. august 2003 - 17:26 #13
Jamen jeg siger tusind tak.
Jeg har hvad jeg skal bruge.
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