Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1556to1560
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

Automatisch Pos.-Nummer

Automatisch Pos.-Nummer
06.05.2017 14:28:20
Peter
Hallo zusammen
Wenn in Spalte B, ab B2 ein Wert steht, dann soll in Spalte A automatisch die Positionsnummer erstellt werden.
Ich habe folgende Formel, wie kann ich diese Formel in ein VBA Code umwandeln?
=WENN(B2"";TEILERGEBNIS(103;$B$2:$B2);"")
Danke
Viele Grüsse,
Peter

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

Betreff
Datum
Anwender
Anzeige
AW: Automatisch Pos.-Nummer
06.05.2017 14:33:39
Hajo_Zi
Hallo Peter,
starte den VBA Editor (Alt+F11), Bild sollte zweigeteilt sein ansonsten Strg+R, Doppelklick auf Deine Datei, Doppelklick auf Deine Tabelle, Code ins rechte Fenster kopieren, VBA Editor schließen.
Das Makro wird automatisch gestartet.
Der Code wirkt nur in dieser Tabelle.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Application.EnableEvents = False
Target.Offset(0, -1) = WorksheetFunction.Max(Range("A:A")) + 1
Application.EnableEvents = True
End If
End Sub

Anzeige
AW: Automatisch Pos.-Nummer
07.05.2017 07:01:15
Peter
Hallo Hajo
Danke für Deine Antwort, die Formel als VBA funktioniert bestens, jedoch habe ich mir das Ergebnis anders vorgestellt.
Wenn in der Spalte B was geändert wird, dann wird die nächst grössere Positionsnummer geschrieben.
Jedoch wenn dies nicht am Ende der Tabelle passiert, dann stimmt die Reihenfolge der Positionsnummern nicht mehr.
Folgende Fragen:
1. Wie müsste der Code angepasst werden, damit die Reihenfolge immer, auch bei einer hinzugefügten Zeile stimmt.
2. Diese Lösung passt, bei einer manuellen Erstellung, oder Aenderung einer bestehenden Liste, d.h. wenn in B:B was eingetragen oder geändert wird, dann wird die Positionsnummer in A:A erstellt -> "ByVal Target As Range". Wie müsste der Code angepasst werden , wenn ich eine bestehende Liste, z.B. SAP-Download mit den Positionsnummern ergänzen möchte (in einem Modul, dann mit F5 ausführen etc.)?
Danke schon vorab, für Deinen geschätzten Support, falls Du mir auch bei dieser geänderten Aufgabenstellung eine Lösung zeigen willst.
Viele Grüsse,
Peter


Anzeige
AW: Automatisch Pos.-Nummer
07.05.2017 08:32:14
Hajo_Zi
Hallo Peter,
von dieser Aufgabe Stand nichts im ersten Beitrag.
Das sind nun 2 völlig unterschiedliche Aufgaben.
Das überlasse ich dann mal anderen.

AW: Automatisch Pos.-Nummer
07.05.2017 09:37:16
Hajo_Zi
mein Code geändert
If Target.Column = 2 And Target.Offset(0, -1) = "" Then

AW: Automatisch Pos.-Nummer
07.05.2017 09:54:05
Peter
Hallo Hajo
Ok alles klar, passt schon, danke nochmals für Deine Unterstützung.
Gruss,
Peter
AW: Automatisch Pos.-Nummer
07.05.2017 09:41:41
Gerd
Hallo Peter!
1)
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Application.EnableEvents = False
Call teste
Application.EnableEvents = True
End If
End Sub
2)
Sub teste()
Columns(1).ClearContents
Columns(2).SpecialCells(xlCellTypeConstants).Offset(, -1).FormulaR1C1 = "=COUNTA(R1C2:RC2)"
Columns(1).Formula = Columns(1).Value
End Sub
Gruß Gerd
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige