Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketGem & Luk

 Besvar Besvar
Forfatter
prefalch Se dropdown
Bronze bruger
Bronze bruger


Medlem: 02.Dec.2016
Land: Danmark
Status: Offline
Point: 37
Direkte link til dette indlæg Emne: Gem & Luk
    Sendt: 23.Nov.2020 kl. 14:11
Jeg har leget lidt med denne

If Application.Workbooks.Count = 1 Then
Application.DisplayAlerts = False
Application.Quit
Else
ThisWorkbook.Close False
End If

Vil gerne kombinere med at det aktuelle ark gemmes først og at der kommer en kontrolboks op og spørger om det er rigtigt at der skal gemmes inden der lukkes.

Som jeg forstår ovennævnte kode så lukker den kun det aktuelle ark, hvis der er flere åbne.

Med venlig hilsen
Preben
Til top



Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Accepteret svar Accepteret svar
Direkte link til dette indlæg Sendt: 24.Nov.2020 kl. 09:42
Citat: Ib Hansen Ib Hansen skrev:

Den midterste kode virker nøjagtig som "Gem som" i ethvert program.

Der sker det samme, hvis:
- Du laver en knap (button) med koden...
- Eller hvis du åbner Filer i Excels menulinje og klikker på "Gem som"...

Lad os forudsætte du har lavet dit Excel Regneark og du har navngivet det.

Gem:
Bruges hvis dokumentet bare skal gemmes.

Gem som:
Bruges hvis dokumentet skal "gemmes som" et andet navn.
- Det gemmes i den mappe, det er åbnet fra.
- Hvis mappen ikke eksisterer, åbnes et dialog vindue, hvor du kan klikke dig frem til den mappe, det skal gemmes i.

Gem og luk.
Bruges hvis dokumentet bare skal gemmes med de ændringer du har foretaget og Excel herefter skal lukkes.

Åben et nyt frisk Excel ark.
- Lav 3 CommandButtons.
- Kopier hver enkelt af ovenstående koder ind i hver af de 3 CommandButtons.
- Gem arket og navngiv det f.eks. "Test" i en mappe på dit skrivebord - Husk at gemme arket som "Test.xlsm".
- Luk Excel helt ned.
- Åben herefter arket fra mappen på dit skrivebord og test hvordan de forskellige knapper/koder virker.

Se også, hvordan det virker her...
- Download og gem det vedhæftede ark.
- Accepter redigering og makro'er, når arket (Blodtryksskemaet) åbnes.
- De 3 knapper er i øverste venstre hjørne af menulinjen (Ribbon).

Ps - Klik ikke på det store blodtryksapparat, når du åbner arket Wink

Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Bjarnehansen Se dropdown
Platin bruger
Platin bruger
Avatar

Medlem: 20.Nov.2011
Land: DK
Status: Online
Point: 5484
Direkte link til dette indlæg Sendt: 23.Nov.2020 kl. 16:10
prøv at se på denne

'------------'
' Gem og luk '
'------------'
        
'Slår fra så der ikke spørges om "Er du sikker?"
    'Application.DisplayAlerts = False

'Gemmer og lukker
    
    ActiveWorkbook.Save
    ThisWorkbook.Close False

Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Med venlig hilsen - Bjarne Hansen - Microsoft 365 DK
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 24.Nov.2020 kl. 01:42
Jeg har de tre almindelige jeg bruger.

Gemmer og lukker - Uden at spørge.
'------------'
' Gem og luk '
'------------'
'Lukker alle popup vinduer
    Dim objLoop As Object
    
    For Each objLoop In VBA.UserForms
        If TypeOf objLoop Is UserForm Then Unload objLoop
    Next objLoop
    
'Slår fra så der ikke spørges om "Er du sikker?"
    Application.DisplayAlerts = False

'Gemmer og lukker Excel
    ActiveWorkbook.Save
    Excel.Application.Quit

Gem som - Vil gemme i formatet *.xlsm som standard - (Excel m. makro).
Tjekker også om filen er åben i et andet vindue.
'------------------'
' Gem som nyt navn '
'------------------'
'Lukker alle popup vinduer
    Dim objLoop As Object
    
    For Each objLoop In VBA.UserForms
    If TypeOf objLoop Is UserForm Then Unload objLoop
    Next objLoop

    Dim varWorkbookName As String
    Dim sFileExtension As String
    Dim ans As VbMsgBoxResult
    
    Application.EnableEvents = False
     
    varWorkbookName = Application.GetSaveAsFilename(InitialFileName:="", _
    filefilter:="Excel Macro Enabled Workbook (*.xlsm), *.xlsm)", _
    FilterIndex:=1)
     
    If varWorkbookName <> "False" Then
        sFileExtension = CreateObject("Scripting.FileSystemObject").GetExtensionName(varWorkbookName)
        sFileExtension = CreateObject("Scripting.FileSystemObject").GetExtensionName(varWorkbookName)
        varWorkbookName = Left(varWorkbookName, Len(varWorkbookName) - Len(sFileExtension)) & "xlsm"
         
        If Dir(varWorkbookName) <> "" Then
            ans = MsgBox("   " & Mid$(varWorkbookName, InStrRev(varWorkbookName, "\") + 1) _
            & vbCrLf & "   findes allerede." _
            & vbCrLf & vbCrLf & "   Skal den eksisterende fil erstattes ?", _
            vbYesNo + vbInformation, "Bekræft Gem som")
            If ans = vbYes Then
                 
                Application.DisplayAlerts = False
                On Error GoTo FileOpen
                ActiveWorkbook.SaveAs Filename:=varWorkbookName, _
                FileFormat:=xlOpenXMLWorkbookMacroEnabled
                Application.DisplayAlerts = True
            End If
        Else
             
            ActiveWorkbook.SaveAs Filename:=varWorkbookName, _
            FileFormat:=xlOpenXMLWorkbookMacroEnabled
        End If
    End If

    Application.EnableEvents = True
    Exit Sub
    
FileOpen:
    MsgBox "   Filen er åben i et andet vindue." _
            & vbNewLine & vbNewLine & "   Luk filen og gem igen.", _
            vbExclamation, "Fil åben"

Bare Gem.
'-----'
' Gem '
'-----'
    ThisWorkbook.Save
Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
prefalch Se dropdown
Bronze bruger
Bronze bruger


Medlem: 02.Dec.2016
Land: Danmark
Status: Offline
Point: 37
Direkte link til dette indlæg Sendt: 24.Nov.2020 kl. 07:44
Den midterste ser spændende ud.
Hvordan får du lagt filen i den samme mappe som den er åbnet fra, når jeg prøver din kode lægger den den nye fil i dokument mappen.
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 24.Nov.2020 kl. 09:41
Den midterste kode virker nøjagtig som "Gem som" i ethvert program.

Der sker det samme, hvis:
- Du laver en knap (button) med koden...
- Eller hvis du åbner Filer i Excels menulinje og klikker på "Gem som"...

Lad os forudsætte du har lavet dit Excel Regneark og du har navngivet det.

Gem:
Bruges hvis dokumentet bare skal gemmes.

Gem som:
Bruges hvis dokumentet skal "gemmes som" et andet navn.
- Det gemmes i den mappe, det er åbnet fra.
- Hvis mappen ikke eksisterer, åbnes et dialog vindue, hvor du kan klikke dig frem til den mappe, det skal gemmes i.

Gem og luk.
Bruges hvis dokumentet bare ska gemmes og Excel herefter skal lukkes.

Åben et nyt frisk Excel ark.
- Lav 3 CommandButtons.
- Kopier hver enkelt af ovenstående koder ind i hver af de 3 CommandButtons.
- Gem arket og navngiv det f.eks. "Test" i en mappe på dit skrivebord.
- Luk Excel helt ned.
- Åben herefter arket fra mappen på dit skrivebord og test hvordan de forskellige knapper/koder virker.

Se også, hvordan det virker her...
- Download og gem det vedhæftede ark.
- Accepter redigering og makro'er, når arket (Blodtryksskemaet) åbnes.
- De 3 knapper er i øverste venstre hjørne af menulinjen (Ribbon).

Ps - Klik ikke på det store blodtryksapparat, når du åbner arket Wink

Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Accepteret svar Accepteret svar
Direkte link til dette indlæg Sendt: 24.Nov.2020 kl. 09:42
Citat: Ib Hansen Ib Hansen skrev:

Den midterste kode virker nøjagtig som "Gem som" i ethvert program.

Der sker det samme, hvis:
- Du laver en knap (button) med koden...
- Eller hvis du åbner Filer i Excels menulinje og klikker på "Gem som"...

Lad os forudsætte du har lavet dit Excel Regneark og du har navngivet det.

Gem:
Bruges hvis dokumentet bare skal gemmes.

Gem som:
Bruges hvis dokumentet skal "gemmes som" et andet navn.
- Det gemmes i den mappe, det er åbnet fra.
- Hvis mappen ikke eksisterer, åbnes et dialog vindue, hvor du kan klikke dig frem til den mappe, det skal gemmes i.

Gem og luk.
Bruges hvis dokumentet bare skal gemmes med de ændringer du har foretaget og Excel herefter skal lukkes.

Åben et nyt frisk Excel ark.
- Lav 3 CommandButtons.
- Kopier hver enkelt af ovenstående koder ind i hver af de 3 CommandButtons.
- Gem arket og navngiv det f.eks. "Test" i en mappe på dit skrivebord - Husk at gemme arket som "Test.xlsm".
- Luk Excel helt ned.
- Åben herefter arket fra mappen på dit skrivebord og test hvordan de forskellige knapper/koder virker.

Se også, hvordan det virker her...
- Download og gem det vedhæftede ark.
- Accepter redigering og makro'er, når arket (Blodtryksskemaet) åbnes.
- De 3 knapper er i øverste venstre hjørne af menulinjen (Ribbon).

Ps - Klik ikke på det store blodtryksapparat, når du åbner arket Wink

Excel 2010 Dk og 2019 Dk på samme computer.
Bruger dog stadig mest 2010..
Men sådan er der jo så majet :o)
Til top
prefalch Se dropdown
Bronze bruger
Bronze bruger


Medlem: 02.Dec.2016
Land: Danmark
Status: Offline
Point: 37
Direkte link til dette indlæg Sendt: 24.Nov.2020 kl. 10:14
Takker
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk