Stránka 1 z 1

Uložit nový sešit jako hodnoty  Vyřešeno

Napsal: 09 pro 2014 17:25
od XiXaolin
Zdravím všechny excel machry, potřeboval bych pomoct s úpravou kódu.
Mám soubor, který potřebuju uložit jako nový soubor se zvoleným názvem, ale potřebuji to uložit jako hodnoty, protože v tomto souboru načítám data z jiných listů pomocí jiných funkcí.
Je možné modifikovat níže uvedený kód, kterým to nyní ukládám? Popřípadě vymyslet jiný způsob při zachvání podmínek názvu atd.

Díky

Private Sub CommandButton1_Click()
' SaveSheet()
Dim fName As String
ActiveSheet.Copy
With ActiveSheet.UsedRange
.Copy


End With
On Error Resume Next
ActiveSheet.OLEObjects.Visible = True
ActiveSheet.OLEObjects.Delete
On Error GoTo 0

Application.CutCopyMode = False
fName = Range("G1")
ActiveWorkbook.SaveCopyAs fileName:=fName & Format(Date, "yyyymmdd - ") & Range("C9").Text & ".xlsx"
FileFormat = xlOpenXMLWorkbook
ActiveWorkbook.Close (False)

MsgBox "Soubor byl uložen"

End Sub

Re: Uložit nový sešit jako hodnoty

Napsal: 10 pro 2014 06:36
od Transmit
Ahoj, řešil jsem něco podobného. Třeba ti to pomůže. http://www.pc-help.cz/viewtopic.php?f=35&t=127883&p=1000443#p1000443

Re: Uložit nový sešit jako hodnoty

Napsal: 11 pro 2014 15:08
od XiXaolin
Toto je super. Zrušilo to propojení které jsem tam měl nastavené. Akorát já bych potřeboval aby se všechno změnilo na hodnoty protože mám tam i jeden sloupec kde zůstal vzorec a to taky nechci aby šlo vidět.

I tak díky za super vylepšovák

Re: Uložit nový sešit jako hodnoty

Napsal: 12 pro 2014 10:30
od Transmit
Podobnou věc řeším tímto makrem. Asi to jde udělat i sofistikovaněji, ale označenou oblast kopíruji na stejné místo, akorát dám vložit jako hodnoty.
Vzorce se tím vyruší.

Kód: Vybrat vše

Range("vepiš buňku nebo oblast buněk").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Application.CutCopyMode = False

Re: Uložit nový sešit jako hodnoty

Napsal: 15 pro 2014 07:11
od eLCHa
Transmit píše:Asi to jde udělat i sofistikovaněji

Ano - když už jste to zmínil, tak lze

Kód: Vybrat vše

With Range("vepiš buňku nebo oblast buněk")
.Value = .Value
End With