Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
316to320
316to320
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kopieren

Kopieren
01.10.2003 12:49:08
detlef
Hallo,

ich möchte folgendes erreichen und ich hoffe Ihr könnt mir helfen.

Wenn der Wert Spalte N aus Tabelle1 in der Tabelle2 Spalte R vorhanden ist, dann soll der Wert in Spalte T aus Tabelle2 nach Tabelle1 in Spalte O kopiert werden.

Das Ganze hat max. 1000 Zeilen.

Die Tabelle2 wird nach dem Kopieren geschlossen und wird nach dem nächsten Öffnen anders aussehen. Bitte kein SVerweis bzw. Verknüpfung.

Ich hoffe ich habe mich verständlich ausgedrückt und jemand kann mir helfen.

Detlef

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren
01.10.2003 14:07:48
Reinhard
Hi Detlef,
probier mal das da:

Option Explicit


Sub DEtlev()
Dim SuchSp As String
Dim VerglSp As String
Dim ZielSp As String
Dim QuellSp As String
Dim n As Long
SuchSp = "N"
VerglSp = "R"
ZielSp = "O"
QuellSp = "T"
For n = 1 To Tabelle1.Cells(Rows.Count, Asc(SuchSp) - 64).End(xlUp).Row
If Tabelle1.Cells(n, Asc(SuchSp) - 64) = Tabelle2.Cells(n, Asc(VerglSp) - 64) Then
Tabelle1.Cells(n, Asc(ZielSp) - 64) = Tabelle2.Cells(n, Asc(QuellSp) - 64)
End If
Next n
End Sub


Gruß
Reinhard
AW: Kopieren
01.10.2003 14:36:50
Detlef
Hallo Reinhard,

ich habe Deinen Code übertragen, reagiert überhaubt nicht.
Noch zur Info, Tabelle1 ist Datei Daten.xls Sheet Aktuell gemeint, Tabelle2 ist Datei
Stand.xls sheet Tabelle1 gemeint.
Vielleicht kannst Du es nochmal probieren
Gruß
Detlef
Anzeige
AW: Kopieren
01.10.2003 18:09:43
Reinhard
Hi Detlef,
so müßte es laufen.
Gruß
Reinhard


Sub DEtlev()
Dim SuchSp As String
Dim VerglSp As String
Dim ZielSp As String
Dim QuellSp As String
Dim n As Long
SuchSp = "N"
VerglSp = "R"
ZielSp = "O"
QuellSp = "T"
Workbooks.Open "c:\temp\Daten.xls"
Workbooks.Open "c:\temp\Stand.xls"
Set shquelle = Workbooks("Daten.xls").Worksheets("Aktuell")
Set shZiel = Workbooks("Stand.xls").Worksheets("Tabelle1")
For n = 1 To shquelle.Cells(Rows.Count, Asc(SuchSp) - 64).End(xlUp).Row
If shquelle.Cells(n, Asc(SuchSp) - 64) = shZiel.Cells(n, Asc(VerglSp) - 64) Then
shquelle.Cells(n, Asc(ZielSp) - 64) = shZiel.Cells(n, Asc(QuellSp) - 64)
End If
Next n
Workbooks.Close "c:\temp\Daten.xls"
Workbooks.Close "c:\temp\Stand.xls"
End Sub

Anzeige
AW: Kopieren
02.10.2003 08:13:00
Detlef
Guten Morgen Reinhard,

funzt noch nicht,kann aber auch die beiden Dateien nicht hochladen, funktioniert nicht.
Darf ich Diese per Mail senden, wenn ja, E-Mail Adresse?

Danke
Detlef
AW: Kopieren
02.10.2003 11:50:10
Reinhard
Hallo Detlev,
bei mir lief das Makro einwandfrei, zumindest eine Schleife weil ich nur einen Datenwert getestet habe.
Meine email steht links unter Profile in der Profilliste.
Vorab einige Fragen vielleicht steckt da ja der Fehler.
Kannst du beide Dateien manuell problemlos öffnen und in beiden in den genannten Spalten etwas probehalber ändern, also kein Schreibschutz oder so?
Den Pfad C:\temp\ musst du ja anpassen, ist da alles korrekt geschrieben, Groß/Kleinschrift.
Gehe dahin wo der Code steht und teste das Makro mit F8 Zeile für Zeile, wo bleibt es stehen mit welcher Meldung?
Gruß
Reinhard
Anzeige
Jetzt aber...
02.10.2003 14:40:36
Reinhard
Hi Detlev,
schreib den folgenden Code in deine immer offene gmt2003.xls.
Ich hab jetzt mehrfach getestet, muss klappen.
Achja, ändere deine "Daten.xls.xls" in "Daten.xls" ab.
Gruß
Reinhard

Option Explicit

Sub Detlev()
Application.ScreenUpdating = False
Dim SuchSp As String
Dim VerglSp As String
Dim ZielSp As String
Dim QuellSp As String
Dim n As Long
Dim shQuelle As Worksheet
Dim shZiel As Worksheet
SuchSp = "N"
VerglSp = "R"
ZielSp = "O"
QuellSp = "T"
Workbooks.Open "c:\temp\Daten.xls"
Workbooks.Open "c:\temp\Stand.xls"
Set shQuelle = Workbooks("Daten.xls").Worksheets("Aktuell")
Set shZiel = Workbooks("Stand.xls").Worksheets("Tabelle1")
For n = 1 To shQuelle.Cells(Rows.Count, Asc(SuchSp) - 64).End(xlUp).Row
If shQuelle.Cells(n, Asc(SuchSp) - 64) = shZiel.Cells(n, Asc(VerglSp) - 64) Then
shQuelle.Cells(n, Asc(ZielSp) - 64) = shZiel.Cells(n, Asc(QuellSp) - 64)
End If
Next n
Workbooks("Daten.xls").Close savechanges:=True
Workbooks("Stand.xls").Close
Application.ScreenUpdating = True
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige