PDA

Vollständige Version anzeigen : Einzelnes TB speichern aus Datei


Strahlemännchen
01.06.2013, 12:22
Hallo zusammen,
möchte gern ein einzelnes TB aus einer Datei fest speichern so das die Werte sich nicht mehr ändern.
Habe diesen Code gefunden , der allerdings alles mit speichert auch die Formeln und das ist nicht gut weil sich die Werte immer wieder ändern.
Was muß noch hinzugefügt werden das Werte fest gespeichert werden?
Sub BlattSpeichern()
ActiveWorkbook.Worksheets("Highlights").Copy
Application.Dialogs(xlDialogSaveAs).Show ActiveSheet.Name
End Sub

Wer kann mir helfen?
Gruß
Ruby

Hajo_Zi
01.06.2013, 12:24
siehe Dir mal die Beispiele auf der Seite an Dateikopie (http://hajo-excel.de/vba_dateikopie.htm)

<img src="http://Hajo-Excel.de/images/grusz1.gif" align="middle" height="40" alt="Grußformel"><a href="http://Hajo-Excel.de/index.htm" onclick="window.open(this.href);return false"><img border="0" src="http://Hajo-Excel.de/images/logo_hajo3.gif" align="middle" height="40" alt="Homepage"></a>

amicro2000
01.06.2013, 12:44
Hallo auch Ruby,

Probier mal so:

Sub BlattSpeichern()
Dim a As Range

ActiveWorkbook.Worksheets("Highlights").Copy
For Each a In ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas)
a = a
Next a
Application.Dialogs(xlDialogSaveAs).Show ActiveSheet.Name
End Sub

Strahlemännchen
01.06.2013, 13:34
Hallo Amicro,
der Code löscht mir jetzt die Formeln in der Datei aus dem ich das TB ja speichern will. Das darf nicht sein. Ich möchte das TB unter einem neuen Pfad speichern und hier sollen die Werte fest gespeichert werden.Wie muß
der code abgeändert werden?

amicro2000
01.06.2013, 13:42
Hallo,

Das kann eigentlich nicht sein, weuil ja zuerst mit

ActiveWorkbook.Worksheets("Highlights").Copy

Das Tabellenblatt (Highlights) in eine neue Mappe kopiert wird, dann ist dieses das aktuelle Tabellenblatt.

Aus dem Aktuellen Tabellenblatt wird mit

For Each a In ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas)
a = a
Next a

alle Formeln durch die Werte ersetzt.

Strahlemännchen
19.06.2013, 15:19
Hallo,
das hat geklappt. Habe ich zu spät bemerkt, es müssen 2 TB abgespeichert werden und wie muss da der Code sein?
Kann mir da einer helfen?
Gruß
Ruby

Strahlemännchen
21.06.2013, 10:13
Guten Tag zusammen,
brauche eure hilfe und dies ist mir wichtig.
Wie muß
obiger Code angepasst werden damit er 2 Tabellenblätter gleichzeitig in neue Datei abspeichert? Mein Versuch einfach noch ein TB dazu zu schreiben blieb erfolglos.
BlattSpeichern()
Dim a As Range

ActiveWorkbook.Worksheets("Highlights";Tabelle2).Copy
For Each a In ActiveSheet.UsedRange.SpecialCells(xlCellTypeFormulas)
a = a
Next a
Application.Dialogs(xlDialogSaveAs).Show ActiveSheet.Name
End Sub

Danke

Strahlemännchen
21.07.2013, 15:31
Hallo nochmal,
habe diesen Code im Modul . Dieser soll 2 TB mit Blattschutz in andere Datei abspeichern. Das geht auch, allerdings sind die Blätter die vorher blattschutz hatten nicht mehr geschützt, das soll so nicht sein sie sollen wieder Blattschutz haben. Was ist falsch an dem Code? Ich finde den fehler nicht.

Sub BlattSpeichern()

Dim a As Range
Worksheets("Highlights").Unprotect Password:="123"
Worksheets("TOP5 Übertrag").Unprotect Password:="123"


ActiveWorkbook.Worksheets(Array("Highlights", "TOP5 Übertrag")).Copy

For Each a In Worksheets("Highlights").UsedRange.SpecialCells(xlCellTypeFormulas)
a = a
Next a


For Each a In Worksheets("TOP5 Übertrag").UsedRange.SpecialCells(xlCellTypeFormulas)
a = a
Next a


Worksheets("Highlights").Protect Password:="123"
Worksheets("TOP5 Übertrag").Protect Password:="123"
Application.Dialogs(xlDialogSaveAs).Show "MeinNeuerDateiname"
End Sub

Hajo_Zi
21.07.2013, 15:34
Du schützt die Originalen Tabellen und nicht die Kopie würde icgh vermuten. Vielleicht
ActiveWorkbook.
davor?

<a href="http://Hajo-Excel.de/index.htm" target="_blank" title="Hajo's Excelseiten">Gruß Hajo</a>

Strahlemännchen
21.07.2013, 15:40
Hallo Hajo,
die originalen sind geschützt vor dem speichern. Nach dem speichern sind die orginalen nicht mehr geschützt, die copien schon das ist ja auch richtig. Nur die Originalen sind es nicht mehr. Was ist da falsch?

Hajo_Zi
21.07.2013, 15:43
dann die Befehle nochmal mit ThisWorkbook.
Du musst nicht alles beschreiben, wir haben ja neben Dir gesessen als Du das getestet hast.

<a href="http://Hajo-Excel.de/index.htm" target="_blank" title="Hajo's Excelseiten">Gruß Hajo</a>