Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1328to1332
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

Buchstaben werden nach Kopieren nicht erkannt

Buchstaben werden nach Kopieren nicht erkannt
18.09.2013 20:11:36
Markus
Hallo zusammen,
ich habe da wieder ein Problem, was ich nicht alleine lösen kann.
Folgende Ausgangslage:
Ich kopieren drei Spalten (1.Spalte: Schriftart Marlett, da steht ein a oder nichts drin, Spalte 2 und 3 Calibri; Teilenummer und Teilename)
das ist der Code dafür:
Sub Kopieren_TopX_Month()
Sheets("TopX by Month").Range("e24:e10000").Copy
Sheets("TopX Month").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Sheets("TopX by Month").Range("f24:f10000").Copy
Sheets("TopX Month").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Sheets("TopX by Month").Range("d24:d10000").Copy
Sheets("TopX Month").Cells(Rows.Count, 3).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
End Sub

Im nächsten Schritt wird die Tabelle aus der die Daten stammen aktualisiert, wobei immer neue Daten hinzu kommen. Damit die Zuordnung ob "a" oder "nicht a" für die Teilenummern nicht jedesmal wieder von Hand getätigt werden müssen, lassen ich über
ein weiteres Makro wieder eintragen, somit muss ich mir nur die neuen Daten anschauen.
Das ist der Code für das einfügen des "a"
Sub Finden_Status_TopX_Month()
Worksheets("TopX by Month").Select
Worksheets("TopX by Month").Unprotect Password:="XXX"
Sheets("TopX by Month").Range("d24").FormulaArray = "=VLOOKUP(RC[1],'TopX Month'!R[-22]C[-3]:R[ _
9976]C[-1],3,FALSE)"
Sheets("TopX by Month").Range("d24").AutoFill Destination:=Range("D24:D10000"), Type:= _
xlFillDefault
Range("D24:D10000").Select
End Sub
Bis hier funktioniert auch alles. Im nächsten Schritt sollen alle Datensätze die mit einem "a" gekennzeichnet sind kopiert werden. Das geschieht mit diesem Code:
Sub Kopieren4()
With Sheets("TopX by Month")
.Unprotect Password:="XXX"
Dim z As Integer
Dim leer As Integer
Dim Target1 As Range
Dim Target2 As Range
Dim Target3 As Range
z = 24
Do
If .Cells(z, 5)  "" Then     'Makro soll so lange laufen bis in Spalte 4 kein Eintrag  _
mehr ist
leer = False
Else
leer = True
End If
If .Cells(z, 4).Value = "a" Then    'Wenn in Spalte 3 ein "a" dann sollen der Inhalt aus  _
Spalte 4 und 5 kopiert werden
.Cells(z, 5).Copy
.Cells(z, 6).Copy
' Der Inhalt aus Spalte 4 und 5 sollen in die nächste freie  _
Zelle im Arabeitsblatt "Test" kopiert werden 8Spalte 1 und 2)
Set Target1 = Sheets("TopX17").Range("A65536").End(xlUp).Offset(1, 0)
Sheets("TopX by Month").Cells(z, 5).Copy Destination:=Target1
Set Target2 = Sheets("TopX17").Range("B65536").End(xlUp).Offset(1, 0)
Sheets("TopX by Month").Cells(z, 6).Copy Destination:=Target2
Set Target1 = Sheets("TopX18").Range("A65536").End(xlUp).Offset(1, 0)
Sheets("TopX by Month").Cells(z, 5).Copy Destination:=Target1
Set Target2 = Sheets("TopX18").Range("B65536").End(xlUp).Offset(1, 0)
Sheets("TopX by Month").Cells(z, 6).Copy Destination:=Target2
Set Target1 = Sheets("TopX19").Range("A65536").End(xlUp).Offset(1, 0)
Sheets("TopX by Month").Cells(z, 5).Copy Destination:=Target1
Set Target2 = Sheets("TopX19").Range("B65536").End(xlUp).Offset(1, 0)
Sheets("TopX by Month").Cells(z, 6).Copy Destination:=Target2
End If
z = z + 1
Loop Until leer = True
.Protect Password:="XXX"
End With
End Sub
An der Stelle " If .Cells(z, 4).Value = "a" Then " bekomm ich allerdings die Fehlermeldung: "Laufzeitfehler 13": Typen unverträglichkeit.
Ich vermute mal das er das "a" nicht mehr als "a" erkennt. Weiß jetzt allerdings auch nicht wie ich das beheben kann.
Entweder muss man hier das genauer deklarieren, damit "a" auch "a" bleibt:
"Sheets("TopX by Month").Range("d24:d10000").Copy
Sheets("TopX Month").Cells(Rows.Count, 3).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
"
oder im nachhinein die Spalte noch mal entsprechend nach dem Kopiervorgang konvertieren.
Ist wahrscheinlich wieder nur eine Kleinigkeit.
Danke schon einmal
Gruß Markus

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Buchstaben werden nach Kopieren nicht erkannt
18.09.2013 20:44:15
Markus
Abend zusammen,
ich glaub ich hab meinen Fehler gefunden:
Mit dem Code:
Sub Finden_Status_TopX_Month()
Worksheets("TopX by Month").Select
Worksheets("TopX by Month").Unprotect Password:="XXX"
Sheets("TopX by Month").Range("d24").FormulaArray = "=VLOOKUP(RC[1],'TopX Month'!R[-22]C[-3]:R[  _
_
9976]C[-1],3,FALSE)"
Sheets("TopX by Month").Range("d24").AutoFill Destination:=Range("D24:D10000"), Type:= _
xlFillDefault
Range("D24:D10000").Select
End Sub

Mit dem Makro wird in jeder Zeile der Sverweis als komplette Formel hineinkopiert und nicht dessen Ergebnis. Somit ist es klar, dass "a" nicht gefunden werden kann und es zu einer Typenunverträglichkeit kommt. Wie bekomm ich das nun allerdings hin, dass er das Ergebnis einträgt und nicht den Sverweis an sich?
Danke
Gruß Markus

Anzeige
AW: Buchstaben werden nach Kopieren nicht erkannt
18.09.2013 20:55:59
Rudi
Hallo,
warum fügst du den Sverweis als Matrixformel ein?
Und warum sollte das Formelergebnis a nicht als a erkannt werden?
Ich hab den Code nicht gelesen. Ist mir zu stressig.
Gruß
Rudi

AW: Buchstaben werden nach Kopieren nicht erkannt
18.09.2013 21:10:20
Markus
Hallo Rudi,
weil ich das Makro über den Makrorecorder erstellt habe. Und in entsprechender Zelle den Sverweis eingegeben habe. Daher trägt er dann auch über das Makro in jeder Zeile den Sverweis an sich ein und nicht nur das Ergebnis aus diesem. Es steht zwar dann ein a in der zeile, allerdings kann das darauf folgende Makro mit diesem nichts anfangen.
Gruß Makrus

Anzeige
AW: Buchstaben werden nach Kopieren nicht erkannt
19.09.2013 16:19:51
Markus
Hallo zusammen,
ich habe es nun über den Befehl ".PasteSpecial Paste:=xlPasteValues" und einer Hilfsspalte geschafft, dass mir nur noch der Buchstabe ausgegeben wird. Allerdings erkennt VBA diesen immer noch nicht. Gebe ich "a" von Hand ein, läuft das darauf folgende Makro, trägt mein Makro "a" ein, erkennt das darauf folgende Makro dieses nicht. In welches Format muss ich das "a" formatieren, damit das Makro damit was anfangen kann? Bei Zahlen multipliziert man diese dann mit 1 und man hat Sie wieder als Zahl vorliegen, gibt es so etwas ähnliches auch für Buchstaben?
Bitte um Hilfe, DAnke.
Gruß Markus

Anzeige
AW: Buchstaben werden nach Kopieren nicht erkannt
20.09.2013 10:51:48
Markus
Hallo Markus,
Kann es sein, dass bei deinem "a" ein Leerzeichen versteckt ist?
"a" ist nicht gleich "a " oder " a" oder " a "
lg
Markus

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige