Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
540to544
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
540to544
540to544
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Macros aufzeichnen

Macros aufzeichnen
04.01.2005 13:07:29
Joachim Glaus
Hallo liebe Excel-Experten
Folgende Situation: In der ersten Tabelle sind in Spalte A fortlaufende Nummern in Spalte B eine Auswahl von ca. 10 verschiedene Abkürzungen. Diese Abkürzungen verweisen auf auf andere Tabellen (ca. 4). Jetzt sollte die fortlaufende Nummer automatisch in die andere Tablle "kopiert" werden, wenn ich eine der entsprechende Abkürzung in Spalte B schreibe. Ich konnte dies bisher mit Zellenfunktionen mit WENN, etc. erreichen. Das Problem hiermit besteht, dass die fortlaufende Nummer nur auf der gleichen Zeile übertragen wird. Somit bestehen dann in denn Tabellen wo die Nummer hineinkopiert wird, leere Zeilen entstehen. Ich möchte nun erreichen, vielleicht mit Hilfe von Makros, dass die fortlaufende Nummer in den Tabellen automatisch (jeweils auch in Spalte A) auf die nächstuntere Zeile eingefügt wird.
Könnt ihr mir da helfen. Das wäre super! Vielen Dank schon im voraus
Joachim

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Macros aufzeichnen
04.01.2005 18:16:58
Beni
Hallo Joachim,
kopiere diesen Code in das Modul der Tabelle, mit rechte Maustaste auf Blattregister/Code anzeigen.
Gruss Beni

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
With Sheets(Target.Text)
lz = .Cells(65536, 1).End(xlUp).Row
.Cells(lz + 1, 1) = Cells(Target.Row, 1)
End With
End If
End Sub

AW: Macros aufzeichnen
05.01.2005 11:28:57
Joachim
Vielen Dank Beni
Es könnte sein das ich nicht nur etwas falsch mache. Es funktioniert irgendwie nicht. Kannst du mir mal erklären was dein "Code" macht?
Muss ich im Visual Basic-Fenster links Modul doppelklicken und dann im weissen Fenster den Code reinkopieren, oder? Wenn führt das Makro den Befehl aus? Beim öffnen, schliessen, Tastenkombination oder sobald dass das Feld leer ist?
Gruss
Joachim
Anzeige
AW: Macros aufzeichnen
05.01.2005 19:59:45
Beni
Hallo Joachim,
mit rechte Maustaste auf Blattregister/Code anzeigen, oder mit Alt+F11 zum Visual-Basic-Editor, doppelklick aus Tabellen-Modul.
Diese Prozedur wird ausgeführt, wenn in Spalte2 eine Veränderung geschiet.
Gruss Beni
AW: Macros aufzeichnen
06.01.2005 10:41:49
Joachim
Hallo Beni
Kannst du mal die Datei anschauen? Es ist zwar eine Kopie, wegen Firmengeheimnis etc., du weisst schon... In den Tabellenblättern sollten die leeren Zellen (in Spalte A) "aufgefüllt werden. Wäre dir dankbar!!

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

Gruss
AW: Macros aufzeichnen
06.01.2005 11:47:52
Beni
Hallo Joachim,
die Tabellennamen müssen gleich sein, wie die Namen in SpalteB,
ich habs Dir korrigiert.
Gruss Beni
https://www.herber.de/bbs/user/15688.xls
Anzeige
AW: Macros aufzeichnen
06.01.2005 11:48:01
Beni
Hallo Joachim,
die Tabellennamen müssen gleich sein, wie die Namen in SpalteB,
ich habs Dir korrigiert.
Gruss Beni
https://www.herber.de/bbs/user/15688.xls
AW: Macros aufzeichnen-Vielen Dank!
06.01.2005 13:53:41
Joachim
Hallo Beni
Vielen Dank, das hat soweit super geklappt!
Folgendes Problem besteht noch (wenn das lösbar ist): Die Nummer wird soweit in das Tabellenblatt kopiert, sobald ich eine Abkürzung in Spalte B schreibe. Wenn ich nun den Namen ändere (angenommen ich hab mal den Namen verwechselt), bleibt die Nummer aber im Tabellenblatt bestehen. Kann man das so programmieren, dass sobald der Text weg ist, die Nummer wieder frei verfügbar ist?
Gruss
Joachim
Anzeige
AW: Macros aufzeichnen-Vielen Dank!
06.01.2005 18:51:02
Beni
Hallo Joachim,
füge diesen Code in das Tabellenmodul in der Tabelle Du die Eingaben in SpalteB machst,
in den anderen Tabellenmodul darf dieser Code nicht sein.
Leider kann ich Dir keine Beispieldatei anfügen, seit ich Zuhause das Scheiss-XP habe, geht das nicht mehr.
Gruss Beni
Dim alterWert

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
If Target = "" Then
Nummer = Cells(Target.Row, 1)
Set n = Sheets(alterWert).Columns(1).Find(What:=Nummer, LookIn:=xlValues, LookAt:=xlWhole)
If Not n Is Nothing Then n(1, 1).Delete Shift:=xlUp
Exit Sub
End If
If Target <> "" Then
With Sheets(Target.Text)
lz = .Cells(65536, 1).End(xlUp).Row
.Cells(lz + 1, 1) = Cells(Target.Row, 1)
End With
End If
End If
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 2 Then
alterWert = Target
End If
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige