Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1416to1420
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sendkey geht nicht wie gewünscht

Sendkey geht nicht wie gewünscht
02.04.2015 13:00:50
Tobias
Hallo,
ich habe mir ein Tabellenblatt gebastelst das mir über die Zwischenablage Werte von einem ERP System in das Excelfile einfügt. Die Spalten sind enstrechend Formatiert (Text, Zahl usw.)
Hier hat Excel ein Problem. Beim Einfügen von Zwischenablagen, werden die Werte immer als Text behandelt, egal was das Zellformat ist.
Mit einem Aufruf von "F2" und "Return" erkennt Excel dann das Format und bearbeitet richtig weiter. Hier setzt mein Work-Around an. Über die Funktion "Sendkey" simuliere ich dieses.
Rufe ich die Befehlsfolge alleine auf :

For i = 1 To zeilenanzahl
SendKeys "{F2}", True
SendKeys "{ENTER}", True
Next i
so funktioniert das uneingeschränkt. Füge ich diesen Codeschnipsel in ein längeres Makro z. B. so:

... davor steh auch noch zeug
Sheets(tabellenname).Select
Range("I2").Select ' setzte Cursor auf Startposition
'    Application.Wait (Now + TimeValue("0:00:01"))
For i = 1 To 10
SendKeys "{F2}", True
SendKeys "{ENTER}", True
SendKeys "{DOWN}", True
Next i
Sheets("Start").Select
Range("h" & 8 + 1).Value = letztezeile
.... und weiter geht der Code
dann ruft das Makro aus dem Programmiermodus die Taste F2 (Obejktkatalog) auf. Wie Ihr sehen könnt habe ich auch schon mit einer Pause gearbeitet. Hat aber auch nicht geholfen.
Wie kann ich verhindern, dass das dies geschieht? Ich brauch ein Code der auf dem Fenster ausgeführt wird.
Danke für die Hilfe im voraus.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sendkey geht nicht wie gewünscht
02.04.2015 13:11:54
Nepumuk
Hallo,
einfach so:
Spalte markieren - Reiter Daten - Text in Spalten - Fertig stellen.
Kannst du auch mit dem Makrorekorder aufzeichnen.
Gruß
Nepumuk

AW: Sendkey geht nicht wie gewünscht
02.04.2015 14:19:33
fcs
Hallo Tobias,
hier eine kleine Subroutine zur Umwandlung von Ziffernfolgen(Text) in Zahlen, die man für die verschiedenen Zellbereiche aufrufen kann, optional mit Zahlenformat.
Gruß
Franz
Sub abTest()
Dim tabellenname As String
tabellenname = "Tabelle1"
With Sheets(tabellenname)
Call prcText_durch_Zahl_ersetzen(rngBereich:=.Range("I2:I11"))
'oder
Call prcText_durch_Zahl_ersetzen(rngBereich:=.Range(.Cells(2, 10), .Cells(11, 10)), _
varZahlenFormat:="#,##0.00")
End With
End Sub
Public Sub prcText_durch_Zahl_ersetzen(rngBereich As Range, Optional varZahlenFormat)
Dim Zelle As Range
If Not IsMissing(varZahlenFormat) Then
rngBereich.NumberFormat = varZahlenFormat
End If
For Each Zelle In rngBereich.Cells
If Not IsEmpty(Zelle) Then
If IsNumeric(Zelle.Value) Then Zelle.Value = CDbl(Zelle.Value)
End If
Next
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige