< návrat zpět

MS Excel


Téma: Původní soubor neměnit a ukládat jen jeho kopie rss

Zaslal/a 22.12.2014 12:49

Ahoj,

chtěl bych udělat, aby po kliknutí na tlačítko "Uložit" se sešit neuložil, ale aby došlo k otevření dialogu "Uložit jako" s přednastavenou cestou a názvem souboru. Chtěl bych, aby původní soubor zůstal nezměněný a ukládaly se jen jeho kopie.
Chtěl jsem to řešit nějak takto:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim ulozit As FileDialog

Set ulozit = Application.FileDialog(msoFileDialogSaveAs)

With ulozit
.Title = "Zadejte název souboru"
.InitialFileName = "C:\" & Range("D6") 'v D6 je uložen název souboru
.Show
.Execute
End With
End Sub

ale bohužel to nefunguje.
Za rady děkuji

Zaslat odpověď >

Strana:  « předchozí  1 2
#023974
avatar
Ještě menší úprava, protože takto by se stále ukládala každá kopie ostatním uživatelům pouze pro čtení, takže mě napadlo:

rozhodnutí kdy/komu se soubor otevře pro čtení a kdy/komu pro zápis vytvořit v Modulu1:
Sub Auto_Open()
Dim strUser As String
strUser = Environ("USERNAME")
Select Case strUser
'Full Access
Case Is = "jméno uživatele"
If ActiveWorkbook.ReadOnly Then _
ActiveWorkbook.ChangeFileAccess Mode:=xlReadWrite, WritePassword:="admin"
'Limit Access
Case Is <> "jméno uživatele"
If Not ActiveWorkbook.ReadOnly Then _
ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly, WritePassword:="admin"
End Select
End Sub

a k tomu vytvořit Modul2, který v případě otevřeného souboru "pouze pro čtení" nabídne "uložit jako" a zároveň v této uložené kopii zruší omezení z Modulu1 (a zamete po sobě)
Sub Auto_Close()
If ActiveWorkbook.ReadOnly = True Then
Dim vbCom As Object
Set vbCom = Application.VBE.ActiveVBProject.VBComponents
vbCom.Remove VBComponent:=vbCom.Item("Module1")
vbCom.Remove VBComponent:=vbCom.Item("Module2")
Else
If ActiveWorkbook.ReadOnly = True Then
ThisWorkbook.SaveAs Filename:="Sammel" & ".xls", FileFormat:=56
End If
End If
End Sub


Samozřejmě část prvotního požadavku"Uložit jako" s přednastavenou cestou a názvem souboru pak už lze nadefinovat jednoduše. Nejsem profík, možná to jde i líp. Tak to berte s rezervou 10citovat

Strana:  « předchozí  1 2

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse

Vynásobit hodnoty kurzem - Power Query

lubo • 25.4. 19:18

Relativní cesta - zdroje Power Query

elninoslov • 25.4. 15:12

Relativní cesta - zdroje Power Query

Alfan • 25.4. 15:08

Relativní cesta - zdroje Power Query

elninoslov • 25.4. 14:21

Relativní cesta - zdroje Power Query

Alfan • 25.4. 10:49

Relativní cesta - zdroje Power Query

elninoslov • 25.4. 10:47

Relativní cesta - zdroje Power Query

Alfan • 25.4. 10:40