Anzeige
Archiv - Navigation
584to588
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
584to588
584to588
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tabellen Verweise

Tabellen Verweise
14.03.2005 09:03:05
Tobias Marx
Servus!
Also, um mein Problem noch einmal zu verdeutlichen, habe ich nun Ausschnitte aus meinen zwei Tabellen gemacht und diese noch etwas ausgestaltet mit Kommentaren.
Hier auch nochmal der Code, der die Arbeit bewerkstelligen soll:

Dim c As Range, SuBe As Range
Dim s As String
Dim laR As Long, lar2 As Long
'Bildschirmflackern abstellen
'Application.ScreenUpdating = False
'Anzahl der belegten Zellen in Tabelle2, Spalte A ermitteln
Windows("Dienstarten.xls").Activate
lar2 = Sheets(1).Cells(Rows.Count, 2).End(xlUp).Row
Windows("temp.xls").Activate
With Sheets("DATA")
'Anzahl der belegten Zellen in Tabelle3, Spalte A ermitteln
laR = .Cells(Rows.Count, 1).End(xlUp).Row
For Each c In .Range("A1:A" & laR)
'Jede Zelle in Bereich B abhandeln
s = c.Text
Windows("Dienstarten.xls").Activate
With Sheets(1)
'Bezug finden?
Set SuBe = .Range(.Cells(1, 2), .Cells(lar2, 2)). _
Find(s, lookat:=xlWhole)
'Falls was drin, Marker setzen
If Not SuBe Is Nothing Then
c.Offset(0, 3).Value = SuBe.Offset(0, 3).Value
'Variable loeschen
Set SuBe = Nothing
End If
End With
Next c
End With
Application.ScreenUpdating = True
End Sub

Nun, die Tabellen sollten selbstbeschreibend sein, aber ich wills noch einmal erklaeren:
https://www.herber.de/bbs/user/19614.xls - Dienstarten.xls

Die Datei https://www.herber.de/bbs/user/19615.xls wurde aus Datenschutzgründen gelöscht

- Dokument1.xls
Name der 1ten Datei: Dienstarten.xls
Name der 2ten Datei: Dokument1.xls
Tabelle in der 1ten Datei: Tabelle1 (erstes Blatt)
Tabelle in der 2ten Datei: DATA (drittes Blatt)
In Tabelle1 stehen folgende relevante Daten:
In Spalte B stehen die Schluessel, ueber die jeweils die Datensaetze verknuepft werden sollen, in Spalte C steht der Klartext, der nachher in die zweite Datei reinkopiert werden soll.
In Tabelle2 stehen folgende relevante Daten:
In Spalte 1 (Ueberschrift DA) stehen widerrum die Schluessel, ueber die die Datensaetze mit der der ersten Datei/Tabelle vernknuepft werden sollen, in Spalte B der zweiten Datei sollen die Daten aus Spalte C der ersten Datei im Bezug auf o.g. eingefuegt werden.
Ich hoffe, das war jetzt so formuliert, dasses verstaendlich wird.

Gruss

Tobias
P.S.: Martin, ich hab mich gegen SVERWEIS entschieden, da ich von Formeln noch weniger verstehe als von VBA-Quelltext... ausserdem versteh ich die Parameter fuer diesen Befehl in VBA in diesem Fall ned...
P.P.S.: Ich musste einen neuen Thread aufmachen, da der alte, in dem ich Martins Meinung nach antworten sollte, wie es scheint im Archiv gelandet ist inzwischen...

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellen Verweise
14.03.2005 13:41:03
Martin Beck
Hallo Tobias,
eine gute Frage ist schon die halbe Antwort. Ich habe Deinen Code mal angepasst und auf VLOOKUP verzichtet.

Sub Dienstart_uebernehmen()
Dim c As Range, SuBe As Range
Dim s As String
Dim laR As Long, lar2 As Long
Set D1 = Workbooks("Dokument1.xls")
Set DA = Workbooks("Dienstarten.xls")
'Bildschirmflackern abstellen
Application.ScreenUpdating = False
'Anzahl der belegten Zellen in Tabelle1, Spalte A ermitteln
lar2 = DA.Worksheets(1).Range("A65536").End(xlUp).Row
'Anzahl der belegten Zellen in Tabelle3, Spalte A ermitteln
laR = D1.Worksheets("DATA").Range("A65536").End(xlUp).Row
For Each c In D1.Worksheets("DATA").Range("A1:A" & laR)
'Jede Zelle in Spalte A abhandeln
With DA.Worksheets(1)
'Bezug finden?
Set SuBe = .Range(.Cells(1, 1), .Cells(lar2, 1)).Find(c.Value, lookat:=xlWhole)
'Falls was drin, Marker setzen
If Not SuBe Is Nothing Then
c.Offset(0, 1).Value = SuBe.Offset(0, 2).Value
'Variable loeschen
Set SuBe = Nothing
End If
End With
Next c
Application.ScreenUpdating = True
End Sub

Die Beispieldateien mit dem Code findest Du hier:
https://www.herber.de/bbs/user/19638.xls

Die Datei https://www.herber.de/bbs/user/19639.xls wurde aus Datenschutzgründen gelöscht

Gruß
Martin Beck
Anzeige
AW: Tabellen Verweise
14.03.2005 14:16:03
Tobias Marx
Hi Martin!
Ich werds entweder nachher oder morgen noch ausprobieren, ich hab grad n anderes Geschaeft aufgebrummt bekommen (BAT-Aktualisierungen machen -wuerg)...
Danke dir trotzdem schonmal im Voraus!

Gruss

Tobias
AW: Tabellen Verweise
17.03.2005 09:14:20
Tobias Marx
Servus!
Also der Code schaut ja eigentlich sinnvoll aus, sofern ich ihn nachvollziehen kann, aber funktionieren tut er deswegen trotzdem ned... es scheint so, als ob er garnix machen wuerde :(
Any Ideas?

Gruss

Tobias
P.S.: Vllt sollte ich doch besser VLOOKUP nehmen...
AW: Tabellen Verweise
17.03.2005 14:25:54
Martin Beck
Hallo Tobias,
ich hatte doch zwei Beispieldateien hochgeladen, in denen ich den Code gestestet habe. In diesen Dateien funktioniert er auf jeden Fall. Hast Du dies ausprobiert?
Wie hast Du den Code dann an Deine "Originaldateien" angepaßt? Kommen Fehlermeldungen? Wenn nein, hast Du die Variableninhalte mal überwacht?
Nur zu sagen, der Code macht nix, ist zu wenig.
Wenn Du gar nicht klar kommst und auch keine Fehlerbeschreibung liefern kannst, lade die Dateien mal hoch. Ansonsten sehe ich die Chancen schlecht, hier noch Deinem VBA-Niveau entsprechende Hilfe zu bekommen (Das soll keine Beleidigung sein, aber bestimmte Probleme kann man mit Hilfe bestimmter Werkzeuge nur lösen, wenn man ausreichende Kenntnisse erworben hat. Du würdest vermutlich auch keinen Start in der Formel 1 in's Auge fassen, wenn Du noch nicht einmal einen Führerschein hättest.).
Gruß
Martin Beck
Anzeige
Danke Martin - klappt
17.03.2005 14:45:39
Tobias Marx
Hi Martin!
Habs wider erwarten doch noch hinbekommen mit deinem Code! Danke fuer deien Geduld, mir das naeherzubringen... hab denk ich auch was mitgenommen von dem ganzen Code da :)
Gruss

Tobias

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige