Hallo Community,
ich habe ein riesiges Problem mit Excel 2007 bzw VBA.
Folgender Sachverhalt:
Ich möchte erreichen, dass das Programm erst erkennt was für ein Buchstabe als erstes Zeichen gesetzt ist (In diesem Fall "D").
Das Programm soll erkennen wieviele Zeichen in der Zeile sind.
Wenn "D" erkannt wurde soll das Programm die 3-8 Stelle auslesen und als Zeilenkopf auf dem nächsten Tabellenblatt einsetzen.
Dann soll das Programm 11 Stellen weiterspringen, die nächsten 8 Ziffern auslesen und in das nächste Tabellenblatt als zweiten Zeilenkopf setzen.
Dann wieder 11 Stellen springen und das selbe nochmal bis zum Ende der Zeile.
Am Ende sollte also auf Tabellenblatt2 folgendes stehen:
Wie kann ich erreichen das VBA die Zelle bis zum Ende ausliest?
Wie kann VBA erkennen ob ein "D" am Anfang steht oder beispielsweise ein "V"?
Wie kann ich erreichen das VBA immer die geforderten 8 Ziffern in das folgende Tabellenblatt untereinander schreibt?
Ich hoffe ihr könnt mir Ansätze (Links zu Lösungen ähnlicher Art) zeigen oder anders helfen.
Mit freundlichen Grüßen
Die No
Ich habe jetzt mal angefangen etwas zu probieren... soweit funktioniert das... :
Spoiler anzeigen
Nächster Schritt: Welche Schleife ist die Beste um alle Daten einzutragen??
ich habe ein riesiges Problem mit Excel 2007 bzw VBA.
Folgender Sachverhalt:
Ich möchte erreichen, dass das Programm erst erkennt was für ein Buchstabe als erstes Zeichen gesetzt ist (In diesem Fall "D").
Das Programm soll erkennen wieviele Zeichen in der Zeile sind.
Wenn "D" erkannt wurde soll das Programm die 3-8 Stelle auslesen und als Zeilenkopf auf dem nächsten Tabellenblatt einsetzen.
Dann soll das Programm 11 Stellen weiterspringen, die nächsten 8 Ziffern auslesen und in das nächste Tabellenblatt als zweiten Zeilenkopf setzen.
Dann wieder 11 Stellen springen und das selbe nochmal bis zum Ende der Zeile.
Am Ende sollte also auf Tabellenblatt2 folgendes stehen:
Wie kann ich erreichen das VBA die Zelle bis zum Ende ausliest?
Wie kann VBA erkennen ob ein "D" am Anfang steht oder beispielsweise ein "V"?
Wie kann ich erreichen das VBA immer die geforderten 8 Ziffern in das folgende Tabellenblatt untereinander schreibt?
Ich hoffe ihr könnt mir Ansätze (Links zu Lösungen ähnlicher Art) zeigen oder anders helfen.
Mit freundlichen Grüßen
Die No
Ich habe jetzt mal angefangen etwas zu probieren... soweit funktioniert das... :
Visual Basic-Quellcode
- Private Sub CommandButton1_Click()
- Dim AnzZeichen As Integer
- Dim ErstesZeichen As String
- ' Anzahl Zeichen ermitteln.
- AnzZeichen = Len(Cells(1, 1))
- ' Erstes Zeichen ermitteln.
- ErstesZeichen = Left(Cells(1, 1).Text, 1)
- ' Prüfen ob das Erste Zeichen ein "D" ist...
- If ErstesZeichen = "D" Then
- ' ... wenn ja: Testen ob es mindestens 2 Arbeitsblätter in der Mappe gibt...
- If Sheets.Count < 2 Then
- ' ... wenn nein: eine entsprechende Fehlermeldung ausgeben:
- MsgBox " Umschalten auf Blatt 2 nicht möglich ! ", _
- 48, " Arbeitsblatt nicht vorhanden :-( "
- Else
- ' ... wenn ja: Kopieren von 3-6 Stelle und Anzeige auf das 2-te Blatt umschalten.
- Sheets(2).Cells(1, 1).Value = Mid$(Sheets(1).Cells(1, 1).Value, 3, 6) ' Schleife einbauen
- Sheets(2).Select
- End If
- Else
- ' ... wenn nein: eine entsprechende Fehlermeldung ausgeben:
- MsgBox " Ist keine Definiton vorhanden! ", _
- 48, " Keine Definiton :-( "
- End If
- End Sub
Nächster Schritt: Welche Schleife ist die Beste um alle Daten einzutragen??
Dieser Beitrag wurde bereits 11 mal editiert, zuletzt von „Novazizo|Sabrina“ ()