Supportnet / Forum / Tabellenkalkulation
Makro
Frage
Hallo Leute,
ich hoffe ihr könnt mir auch diesmal wieder beim folgenden Problem helfen und zwar habe ich folgendes Makro aufgezeichnet und aus einen anderen Makro was eingefügt es funktioniert auch so wie so gut , aber beim Speichen werden nicht die originalen Tabellen-Namen übernommen sonder es werden neue angelegt ( Tabelle1, Tabelle2, Tabelle3 ),
es sollten aber die originalen Tabellen-Namen übernommen werden.
Sub Kopieren()
´
´ Kopieren Makro
´ Makro am 25.10.2005 von Achim aufgezeichnet
´
´
Sheets(Array(" Automaten", "Wechsler", "Deckblatt")).Select
Sheets(" Automaten").Activate
Cells.Select
Selection.Copy
Workbooks.Add
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Selection.PasteSpecial Paste:=xlFormats, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Sheets("Tabelle2").Select
Range("A18").Select
Sheets("Tabelle1").Select
Range("C4").Select
Sheets("Tabelle3").Select
Range("B20:D20").Select
Sheets("Tabelle2").Select
Rem Speichernabfrage
i = MsgBox("SpeichernAktion kann nicht rückgängig gemacht werden!" & Chr(13) & _
"" & Chr(13) & _
"Sicher? Dann OK, sonst ABBRECHEN" & Chr(13), 1 + vbExclamation, "Festwerte in neue Datei speichern")
Rem wenn Abbrechen angeklickt, makroende
If i = 2 Then Exit Sub
Rem SpeichernDialog aufrufen
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:="", fileFilter:="Excel-Arbeitsmappe, *.xls")
If Neuer_Dateiname = False Then Exit Sub
ActiveWorkbook.SaveAs Filename:=Neuer_Dateiname
End Sub
Gruß
Achim
Antwort 1 von coros
Hi Achim,
ist doch klar, dass das so ist. Du legst mit dem Befehl "Workbook.Add" eine neue Datei an, die mit Sicherheit drei Tabellenblätter mit dem Namen Tabelle1 , 2 und 3 hat. Diese neue Datei speicherst Du dann zum Schluss. Wo sollen denn da andere Tabellenblattnamen herkommen. Erklär doch mal, was Du erreichen möchtest, dann kann man Dir sicherlich einen passenden Code erstellen. Denn ich weiß ehrlich gesagt nicht, warum Du alle Tabellenblätter anwählst um dort eine Zelle zu markieren, dann aber in den Blättern nichts mehr passiert.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
ist doch klar, dass das so ist. Du legst mit dem Befehl "Workbook.Add" eine neue Datei an, die mit Sicherheit drei Tabellenblätter mit dem Namen Tabelle1 , 2 und 3 hat. Diese neue Datei speicherst Du dann zum Schluss. Wo sollen denn da andere Tabellenblattnamen herkommen. Erklär doch mal, was Du erreichen möchtest, dann kann man Dir sicherlich einen passenden Code erstellen. Denn ich weiß ehrlich gesagt nicht, warum Du alle Tabellenblätter anwählst um dort eine Zelle zu markieren, dann aber in den Blättern nichts mehr passiert.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von Achim115
Hallo Coros,
erst mal Danke für die schnelle Antwort.
Ich möchte mit den Makro folgendes erreichen,
Es sollen aus den drei Tabellen ( Automaten,Wechsler,Deckblatt ) nur die Werte und die Formate in eine neue Mappe kopiert werden und dan soll der Speichen unter Dialog kommen.
Aber wie gesagt mein Makro funktioniert so weit aber mit den Tabellen Namen eben nicht.
Ich währe um eine Antwort sehr dankbar.
Gruß
Achim
erst mal Danke für die schnelle Antwort.
Ich möchte mit den Makro folgendes erreichen,
Es sollen aus den drei Tabellen ( Automaten,Wechsler,Deckblatt ) nur die Werte und die Formate in eine neue Mappe kopiert werden und dan soll der Speichen unter Dialog kommen.
Aber wie gesagt mein Makro funktioniert so weit aber mit den Tabellen Namen eben nicht.
Ich währe um eine Antwort sehr dankbar.
Gruß
Achim
Antwort 3 von coros
Hi Achim,
kopiere nachfolgenden Code in ein StandardModul und starte es über eine Schaltfläche.
Bei dem Makro werden Dir nur die Werte Deiner drei Tabellenblätter in eine neue Datei Kopiert und die Tabellenblätter in der neuen Datei erhalten die gleichen Namen wie in der Ausgangsdatei. Zum Schluss wird die Datei gespeichert, wenn das in der MessageBox bestätigt wird.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
kopiere nachfolgenden Code in ein StandardModul und starte es über eine Schaltfläche.
Option Explicit
Sub Kopieren()
Dim Wiederholungen As Integer, Quelldatei As String, i As Integer, _
Neuer_Dateiname
Application.ScreenUpdating = False
Quelldatei = ActiveWorkbook.Name
Workbooks.Add
For Wiederholungen = 1 To 3
Sheets(Wiederholungen).Name = Workbooks(Quelldatei).Sheets(Wiederholungen).Name
Workbooks(Quelldatei).Sheets(Wiederholungen).Cells.Copy
Sheets(Wiederholungen).Range("A1").PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next
i = MsgBox("SpeichernAktion kann nicht rückgängig gemacht werden!" & Chr(13) & _
"" & Chr(13) & _
"Sicher? Dann OK, sonst ABBRECHEN" & Chr(13), 1 + vbExclamation, "Festwerte in neue Datei speichern")
Rem wenn Abbrechen angeklickt, makroende
If i = 2 Then Exit Sub
Rem SpeichernDialog aufrufen
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:="", fileFilter:="Excel-Arbeitsmappe, *.xls")
If Neuer_Dateiname = False Then Exit Sub
ActiveWorkbook.SaveAs Filename:=Neuer_Dateiname
End SubBei dem Makro werden Dir nur die Werte Deiner drei Tabellenblätter in eine neue Datei Kopiert und die Tabellenblätter in der neuen Datei erhalten die gleichen Namen wie in der Ausgangsdatei. Zum Schluss wird die Datei gespeichert, wenn das in der MessageBox bestätigt wird.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 4 von achim115
Hallo Coros,
Danke für Deine Hilfe.
Dein Makro funktioniert fast so wie ich es wollte, es werden zwar alle Werte und die Tabellen Namen übernommen aber die Formatierung der einzelnen Tabellen werden nicht übernommen, es währe nicht schlecht wenn Du das auch noch hinbringen würdest.
Vielen Dank in voraus
Gruß
Achim
Danke für Deine Hilfe.
Dein Makro funktioniert fast so wie ich es wollte, es werden zwar alle Werte und die Tabellen Namen übernommen aber die Formatierung der einzelnen Tabellen werden nicht übernommen, es währe nicht schlecht wenn Du das auch noch hinbringen würdest.
Vielen Dank in voraus
Gruß
Achim
Antwort 5 von achim115
Hallo Coros,
Danke für die Hilfe,
das Problem mir der Formatierung hab ich schon hingebracht, ist gar nicht so schwer wie ich dachte.
Danke noch ein mal.
Gruß und schönen Sonntag
Achim
Danke für die Hilfe,
das Problem mir der Formatierung hab ich schon hingebracht, ist gar nicht so schwer wie ich dachte.
Danke noch ein mal.
Gruß und schönen Sonntag
Achim
Antwort 6 von coros
Hi Achim,
das sollte das nachfolgende Makro machen. Ist im Prinzip genauso wie das letzte, nur mit dem Zusatz, dass Formate mitkopiert werden.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
das sollte das nachfolgende Makro machen. Ist im Prinzip genauso wie das letzte, nur mit dem Zusatz, dass Formate mitkopiert werden.
Option Explicit
Sub Kopieren()
Dim Wiederholungen As Integer, Quelldatei As String, i As Integer, _
Neuer_Dateiname
Application.ScreenUpdating = False
Quelldatei = ActiveWorkbook.Name
Workbooks.Add
For Wiederholungen = 1 To 3
Sheets(Wiederholungen).Name = Workbooks(Quelldatei).Sheets(Wiederholungen).Name
Workbooks(Quelldatei).Sheets(Wiederholungen).Cells.Copy
Sheets(Wiederholungen).Range("A1").PasteSpecial Paste:=xlPasteValues
Sheets(Wiederholungen).Range("A1").PasteSpecial Paste:=xlPasteFormats
Next
i = MsgBox("SpeichernAktion kann nicht rückgängig gemacht werden!" & Chr(13) & _
"" & Chr(13) & _
"Sicher? Dann OK, sonst ABBRECHEN" & Chr(13), 1 + vbExclamation, "Festwerte in neue Datei speichern")
Rem wenn Abbrechen angeklickt, makroende
If i = 2 Then Exit Sub
Rem SpeichernDialog aufrufen
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:="", fileFilter:="Excel-Arbeitsmappe, *.xls")
If Neuer_Dateiname = False Then Exit Sub
ActiveWorkbook.SaveAs Filename:=Neuer_Dateiname
End SubMfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 7 von achim115
Hallo Coros,
Danke,Danke.
Jetzt hab ich nur noch ein anders Problem, aber da zu melde ich mich noch einmal.
Familie geht nun mal vor.
Schönen Sonntag
Achim
Danke,Danke.
Jetzt hab ich nur noch ein anders Problem, aber da zu melde ich mich noch einmal.
Familie geht nun mal vor.
Schönen Sonntag
Achim
Antwort 8 von hartl
Acces-Hilfe für Hartl!
DieTabelle hat eine Spalte mit Kommisionsnummer, und eine Spalte beinhaltet CNC-Nummern.
Die CNC-Nummern sind aber für mehrere Kommisionsnummern gleich.
Nun machte ich eine Anfügeabfrage für eine neue Tabelle mit einer Indizierten Spalte ohne Duplikate um einer jeden Kommisionsnummer die richtige CNC-Nummer zuzuteilen.
Nach einer Fehler und Warnmeldung wird das Ergebnis in der neuen Tabelle richtig angezeigt.
So weit so gut.
Diesen Vorgang habe ich in ein Makro geschrieben.
Jetzt kommt wieder eine Fehlermeldung.
Das Makro wird aber nicht durchgeführt .
Wer kann mir bitte helfen ??
Gruß Hartl.
DieTabelle hat eine Spalte mit Kommisionsnummer, und eine Spalte beinhaltet CNC-Nummern.
Die CNC-Nummern sind aber für mehrere Kommisionsnummern gleich.
Nun machte ich eine Anfügeabfrage für eine neue Tabelle mit einer Indizierten Spalte ohne Duplikate um einer jeden Kommisionsnummer die richtige CNC-Nummer zuzuteilen.
Nach einer Fehler und Warnmeldung wird das Ergebnis in der neuen Tabelle richtig angezeigt.
So weit so gut.
Diesen Vorgang habe ich in ein Makro geschrieben.
Jetzt kommt wieder eine Fehlermeldung.
Das Makro wird aber nicht durchgeführt .
Wer kann mir bitte helfen ??
Gruß Hartl.

