Supportnet / Forum / Tabellenkalkulation
Enter per Makro
Frage
Guten Morgen
mal ne ganz doofe Frage:
kann man "Enter" per Makro ausführen
:-)
Gruß
Carsten
Antwort 1 von Casy
Noch besset wäre "ESC"
:-)
:-)
Antwort 2 von coros
Hi Carsten,
theoretisch kannst Du mit der SendKeys- Anweisung jeden Tastenschlag nachempfinden. Mit der Anweisung
erzeugst Du ein Enter und mit
erzeugst Du den Tastenschlag ESC.
Ich hoffe, die Antwort bringt Dich weiter.
MfG,
Oliver
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.
theoretisch kannst Du mit der SendKeys- Anweisung jeden Tastenschlag nachempfinden. Mit der Anweisung
SendKeys "{ENTER}"erzeugst Du ein Enter und mit
SendKeys "{ESC}"erzeugst Du den Tastenschlag ESC.
Ich hoffe, die Antwort bringt Dich weiter.
MfG,
Oliver
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 3 von Casy
Hallo Oliver,
Danke für die Hilfe.
Grundsätzlich funktionierts, löst aber unerwarteter Weise nicht mein Problem :-(
Ich habe in einem Makro eine "Speichern unter" Funktion eingebaut. Wenn man statt auf speichern auf abbrechen geht, dann wird der Rest des Makros nicht ausgeführt.
Jemand ne Idee?
Gruss
Carsten
Danke für die Hilfe.
Grundsätzlich funktionierts, löst aber unerwarteter Weise nicht mein Problem :-(
Ich habe in einem Makro eine "Speichern unter" Funktion eingebaut. Wenn man statt auf speichern auf abbrechen geht, dann wird der Rest des Makros nicht ausgeführt.
Jemand ne Idee?
Gruss
Carsten
Antwort 4 von coros
Hallo Carsten,
so ist das nun mal. Wenn man auf Abbrechen klickt, wird die Prozedur abgebrochen. Ist doch so oder? Oder was soll passieren, wenn man auf Abbrechen klickt? Du musst schon mal etwas genauer werden und nicht hier nur ein paar Brocken hinwerfen, aus denen sich dann jeder etwas zusammenbasteln soll/ muss.
MfG,
Oliver
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.
so ist das nun mal. Wenn man auf Abbrechen klickt, wird die Prozedur abgebrochen. Ist doch so oder? Oder was soll passieren, wenn man auf Abbrechen klickt? Du musst schon mal etwas genauer werden und nicht hier nur ein paar Brocken hinwerfen, aus denen sich dann jeder etwas zusammenbasteln soll/ muss.
MfG,
Oliver
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 5 von Casy
Hallo Oliver,
Sorry, wenns nicht ganz verständlich ist.
Hier ist mal das ganze Macro:
Sub Export()
´´
Sheets("Seite2").Select
Range("A1:B22").Select
Selection.Copy
Workbooks.Add
Columns("A:A").ColumnWidth = 35
Columns("B:B").ColumnWidth = 15
With Range("A1")
.PasteSpecial Paste:=xlPasteFormats
.PasteSpecial Paste:=xlPasteValues
End With
Dim Neuer_Dateiname
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:="", fileFilter:="Excel-Arbeitsmappe, *.xls")
If Neuer_Dateiname = False Then Exit Sub
ActiveWorkbook.SaveAs Filename:=Neuer_Dateiname
ActiveWorkbook.Close
Sheets("Seite1").Select
End Sub
Mein Problem tritt auf, wenn man bei dem automatisch aufgerufenen Speichern auf "Abruch" geht.
Dann wird die Kopierfunktion nicht zu Ende geführt.
Die neue Arbeitsmappe kann man einfach schließen. Aber dann lande ich wieder auf "Seite2" und das zu kopierende ist noch "aktiv".
Ich möchte gerne wieder auf Seite1 landen.
Ich hatte auch schon die Idee auf Seite2 einen Button mit Abruch einzurichten, aber wenn man nicht vorher ESC drückt dann wird das zu kopierende beim nächsten drücken von Enter eingefügt (egal wo).
Ich hoffe es ist jetzt verständlich
Gruß Carsten
P.S. Der, der mit der Datei am Ende arbeitet ist mindestens ein DAU
Sorry, wenns nicht ganz verständlich ist.
Hier ist mal das ganze Macro:
Sub Export()
´´
Sheets("Seite2").Select
Range("A1:B22").Select
Selection.Copy
Workbooks.Add
Columns("A:A").ColumnWidth = 35
Columns("B:B").ColumnWidth = 15
With Range("A1")
.PasteSpecial Paste:=xlPasteFormats
.PasteSpecial Paste:=xlPasteValues
End With
Dim Neuer_Dateiname
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:="", fileFilter:="Excel-Arbeitsmappe, *.xls")
If Neuer_Dateiname = False Then Exit Sub
ActiveWorkbook.SaveAs Filename:=Neuer_Dateiname
ActiveWorkbook.Close
Sheets("Seite1").Select
End Sub
Mein Problem tritt auf, wenn man bei dem automatisch aufgerufenen Speichern auf "Abruch" geht.
Dann wird die Kopierfunktion nicht zu Ende geführt.
Die neue Arbeitsmappe kann man einfach schließen. Aber dann lande ich wieder auf "Seite2" und das zu kopierende ist noch "aktiv".
Ich möchte gerne wieder auf Seite1 landen.
Ich hatte auch schon die Idee auf Seite2 einen Button mit Abruch einzurichten, aber wenn man nicht vorher ESC drückt dann wird das zu kopierende beim nächsten drücken von Enter eingefügt (egal wo).
Ich hoffe es ist jetzt verständlich
Gruß Carsten
P.S. Der, der mit der Datei am Ende arbeitet ist mindestens ein DAU
Antwort 6 von coros
Hi Carsten,
anbei Dein Makro mit den entsprechenden Änderungen (die fett markierten Anweisungen), wie es bei Betätigen der Abbruchtaste die Datei schließen und man wieder auf Blatt "Seite 1" landen sollte.
Teste das mal, so sollte es funktionieren. Ich habe es nicht gestestet.
MfG,
Oliver
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.
anbei Dein Makro mit den entsprechenden Änderungen (die fett markierten Anweisungen), wie es bei Betätigen der Abbruchtaste die Datei schließen und man wieder auf Blatt "Seite 1" landen sollte.
Sub Export()
Sheets("Seite2").Select
Range("A1:B22").Select
Selection.Copy
Workbooks.Add
Columns("A:A").ColumnWidth = 35
Columns("B:B").ColumnWidth = 15
With Range("A1")
.PasteSpecial Paste:=xlPasteFormats
.PasteSpecial Paste:=xlPasteValues
End With
Dim Neuer_Dateiname
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:="", fileFilter:="Excel-Arbeitsmappe, *.xls")
If Neuer_Dateiname = False Then GoTo Ende
ActiveWorkbook.SaveAs Filename:=Neuer_Dateiname
Ende:
With ActiveWorkbook
.Saved = True
.Close
End With
Sheets("Seite1").Select
End SubTeste das mal, so sollte es funktionieren. Ich habe es nicht gestestet.
MfG,
Oliver
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 Casy
Hi Oliver,
echt super, es funzt !!!
kleiner Wehmutstropfen bei nem anschließenden "Enter" will Excel immer noch alles einfügen, aber das kriege ich über geschützte Zellen in den Griff (dann gibts zwar ne Fehlermeldung aber es passiert nichts)
:-)
Vielen Dank für deine Hilfe
Carsten
echt super, es funzt !!!
kleiner Wehmutstropfen bei nem anschließenden "Enter" will Excel immer noch alles einfügen, aber das kriege ich über geschützte Zellen in den Griff (dann gibts zwar ne Fehlermeldung aber es passiert nichts)
:-)
Vielen Dank für deine Hilfe
Carsten

