Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1412to1416
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

VBA

VBA
14.03.2015 07:06:08
Jürgen
Hallo und guten Morgen,
könnte mir jemand bei folgender Aufgabenstellung behilflich sein...
In Tabellen-Blatt1 soll in Spalte "F" nach einem Teil-String "City" gesucht werden.
Wenn gefunden, dann soll VBA ( eine Liste mit Vor- und Zunamen übertragen )
1. zwei Zeilen tiefer und eine Zelle nach rechts nur den Wert (=immer Strings) aus der Zelle kopieren und in Tabelle2 "E8" (ohne Formatierung und das letzte Zeichen vom Wert löschen) übertragen werden.
2. das gleiche nochmal für den zweiten Wert, nur zwei Spalten weiter rechts und zwei Zeilen tiefer, dieser Wert soll dann in Tabelle2 "F8" übertragen werden ( auch ohne Formatierung und letztes Zeichen löschen)
Das Ende der Liste ( in Tabelle1 ) ist dann erreicht, wenn die nächste Zeile leer ist. ( es hätten auch Nullen oder 111111 in den Zellen nach dem letzten Datensatz stehen können )
für einen Lösungsvorschlag wäre ich sehr dankbar
Mit besten Grüßen
DU Jürgen

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA
14.03.2015 07:21:08
Hajo_Zi
Hallo Jürgen,
Option Explicit
Sub Kopie()
Dim RaFound As Range
Dim LolEtzte As Long
With Worksheets("Tabelle1")
LolEtzte = IIf(IsEmpty(.Cells(.Rows.Count, 6)), .Cells(.Rows.Count, 6).End(xlUp).Row, . _
Rows.Count)
Set RaFound = Range("F1:F" & LolEtzte).Find("City", Range("F" & LolEtzte), , xlWhole, ,  _
xlNext)
If Not RaFound Is Nothing Then
Worksheets("Tabelle2").Range("E8") = RaFound.Offset(2, -1)
Worksheets("Tabelle2").Range("F8") = RaFound.Offset(2, -1)
End If
End With
End Sub


Anzeige
AW: VBA
14.03.2015 07:43:59
Jürgen
Hallo Hajo,
danke für Deine Bemühungen aber leider zeigt VBA in folgender Zeile
LolEtzte = IIf(IsEmpty(.Cells(.Rows.Count, 6)), .Cells(.Rows.Count, 6).End(xlUp).Row, , Rows.Count)
einen Fehler an
Gruü
DU Jürgen

AW: VBA
14.03.2015 07:50:08
Hajo_Zi
Hallo Jürgen,
dazu kann ich nichts schreiben, was wohl daran liegt das ich die Datei nicht sehe.
Bei mir geht es ohne Probleme.
benutze meinen Code. Entferne _ und den Zeilenumbruch den das Forum macht.
oder nochmal neu, mit Zeilenumbrüchen von mir
Option Explicit
Sub Kopie()
Dim RaFound As Range
Dim LolEtzte As Long
With Worksheets("Tabelle1")
LolEtzte = IIf(IsEmpty(.Cells(.Rows.Count, 6)), _
.Cells(.Rows.Count, 6).End(xlUp).Row, .Rows.Count)
Set RaFound = Range("F1:F" & LolEtzte).Find("City", _
Range("F" & LolEtzte), , xlWhole, , xlNext)
If Not RaFound Is Nothing Then
Worksheets("Tabelle2").Range("E8") = RaFound.Offset(2, -1)
Worksheets("Tabelle2").Range("F8") = RaFound.Offset(2, -1)
End If
End With
End Sub

Gruß Hajo

Anzeige
AW: leider nicht
14.03.2015 08:06:19
Jürgen
Hallo Hajo,
Eine Datei hochladen, mit dem Gedanken hatte ich schon gespielt die lässt sich jedoch nicht unter 300k reduzieren ( Ich kopiere mir die Datei aus dem Internet, Excel wird wohl irgendwo im Hintergrund von PHP irgendwelche Informationen mit übertragen die ich nicht sehen kann. ) Selbst wenn ich die Datei auf 10 Datensätze kürze.
Code von Dir auch nochmal neu implementiert funktioniert leider nicht.
Leider reichen meine VBA Kenntnisse nicht aus um die Code-Zeile selbst zu interpretieren. Ich weis ja nicht was Du da geschrieben hast.
Was mir wohl aufgefallen ist: LolEtzte = IIf ← diese doppelte i, ist das korrekt ( habe ich auch schon nur mit einem i ausprobiert )
Gruß
DU Jürgen

Anzeige
AW: leider nicht
14.03.2015 08:10:20
Hajo_Zi
der Code ist korrekt, er läuft bei mir.
Gut Du möchtest nicht eine Tabelle auf das wesentliche reduziert hochladen.
Ich bin dann raus.
Gruß Hajo

AW: Fehler im Getriebe
14.03.2015 08:27:39
Jürgen
Hallo Hajo,
Danke für deine Hilfe
wünsche Dir noch ein schönes WE
Gruß
DU Jürgen

AW: Fehler im Getriebe
14.03.2015 08:27:43
Jürgen
Hallo Hajo,
Danke für deine Hilfe
wünsche Dir noch ein schönes WE
Gruß
DU Jürgen

Jetzt mit Datei
14.03.2015 09:49:40
Jürgen
Hallo nochmal zusammen,
hab mal eine Datei rekonstruiert
https://www.herber.de/bbs/user/96354.xls
achten Sie bitte auf die Verbunden Zellen, vielleicht liegt da der Wurm drin.
Gruß
DU Jürgen

Anzeige
Verbundene Zellen - Ts,ts,ts :-(
14.03.2015 10:53:57
Erich
Hi Jürgen,
ja, da ist der Wurm drin...
Probier mal

Option Explicit
Sub Kopie2()
Dim rngF As Range, lngL As Long, arQ, zz As Long, nn As Long
With Worksheets("Tabelle2")
Set rngF = .Columns(6).Find(What:="City", LookIn:=xlValues, LookAt:=xlPart, _
SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
If rngF Is Nothing Then Exit Sub
lngL = .Cells(.Rows.Count, 7).End(xlUp).Row + 5
arQ = Range(.Cells(rngF.Row + 2, 7), .Cells(lngL, 9))
zz = 1
nn = 7
Do While Not IsEmpty(arQ(zz, 1))
nn = nn + 1
lngL = .Cells(zz + rngF.Row + 1, 7).MergeArea.Rows.Count
Worksheets("Tabelle3").Cells(nn, 5) = arQ(zz, 1)
Worksheets("Tabelle3").Cells(nn, 6) = arQ(zz + lngL - 1, 3)
zz = zz + lngL
Loop
End With
End Sub
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Verbundene Zellen - Ts,ts,ts :-(
14.03.2015 11:28:54
Jürgen
Hallo Erich,
danke für Deine Bemühungen
leider zeigt VBA in folgender Zeile
Set rngF = .Columns(6).Find(What:="City", LookIn:=xlValues, LookAt:=xlPart, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
das hier was nicht stimmt (Gelb hinterlegt)
könntest Du bitte nochmal einen prüfenden Blick über diese Zeile werfen.
Mit besten Grüßen
DU Jürgen

AW: Verbundene Zellen - Ts,ts,ts :-(
14.03.2015 11:30:24
Jürgen
Hallo Erich,
danke für Deine Bemühungen
leider zeigt VBA in folgender Zeile
Set rngF = .Columns(6).Find(What:="City", LookIn:=xlValues, LookAt:=xlPart, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
das hier was nicht stimmt (Gelb hinterlegt)
könntest Du bitte nochmal einen prüfenden Blick über diese Zeile werfen.
Mit besten Grüßen
DU Jürgen

Anzeige
AW: Verbundene Zellen - Ts,ts,ts :-(
14.03.2015 11:39:43
Gerd
Hi Jürgen,
lade am besten eine Beispieldatei mit deinem Code hoch, in der der Kompiler hängenbleibt.
Gruß Gerd

AW: Verbundene Zellen - Ts,ts,ts :-(
14.03.2015 11:44:12
Jürgen
Hallo Gerd,
Danke für den Hinweis ( hätte man auch von selbst drauf kommen können )
https://www.herber.de/bbs/user/96355.xls
Mit besten Grüßen
DU Jürgen

Du solltest etwas zeigen, in dem das Pgm ...
14.03.2015 12:11:12
Luc:-?
…hängen bleibt, Jürgen,
nicht etwas, in dem es fktioniert… :-/
Wahrscheinlich hast du es den Bedingungen deiner RealDatei nicht richtig angepasst.
Gruß, Luc :-?
Besser informiert mit …

Anzeige
AW: Du solltest etwas zeigen, in dem das Pgm ...
14.03.2015 12:24:00
Jürgen
Hallo Luc,
Die Datei
https://www.herber.de/bbs/user/96355.xls
ist die Original-Datei ( also die Rekonstruierte )
bei mir funktioniert sie nicht.
Also Sie funktioniert weder auf meinem PC noch wenn ich sie hier im Forum ausführe
Ich starte das Programm im Code mit F5
Gruß
DU Jürgen

AW: Du solltest etwas zeigen, in dem das Pgm ...
14.03.2015 12:24:54
Jürgen
Hallo Luc,
Die Datei
https://www.herber.de/bbs/user/96355.xls
ist die Original-Datei ( also die Rekonstruierte )
bei mir funktioniert sie nicht.
Also Sie funktioniert weder auf meinem PC noch wenn ich sie hier im Forum ausführe
Ich starte das Programm im Code mit F5
Gruß
DU Jürgen

Anzeige
Aha! Wie kommst du auf [F5]? Wenn man ein ...
14.03.2015 16:24:20
Luc:-?
…Makro mit einem ShortCutKey starten will, Jürgen,
muss dieser auch für das Makro vereinbart sein. Starte es aus Menü Ansicht - Makros (Xl12/2007ff) bzw dem MakroAssistenten (Xl9-11) direkt. Die von Erich benutzten Befehle, Objekte und Eigenschaften gab's alle schon unter Xl9/2K.
Luc :-?

unklar
14.03.2015 16:37:41
Erich
Hi Jürgen,
in welcher Umgebung drückst du F5? (Ich vermute, du bist im VBA-Editor, nicht auf einem Tabellenblatt.)
Was genau passiert, wenn du F5 drückst? Nichts? Fehlermeldung?
Bei mir läuft das locker durch, mit dem richtigen Ergebnis.
Hast du mal mit F8 gestartet und schrittweise ausgeführt?
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
Wenn er im VBE ist, kann er ja auch den Cursor ...
14.03.2015 16:59:57
Luc:-?
…ins Pgm setzen und auf den StartPfeil klicken, Erich;
ich fürchte ja, er versucht das von der XlOberfläche aus.
Gruß, Luc :-?

...Außerdem hat das schon wg XlWhole und ...
14.03.2015 11:00:43
Luc:-?
…(merkwürdigerweise 2× dasselbe) .Offset(2, -1) nicht gepasst, Jürgen,
da der Spalten-Offset lt deinem Bsp positiv sein muss.
Gruß, Luc :-?
Besser informiert mit …

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige