Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Datum + Zeitstempel in Liste eintragen
#1
Hallo zusammen,

in beigefügter Liste möchte ich gerne, dass beim Scannen eines Barcodes aus dem Datenblatt "Barcodes" im Datenblatt "Eintrag"
ein Zeitstempel hinterlegt wird. Liste dazu kann fortlaufend sein. 

Ausgabe = 
Wert aus Barcode -> "Eintrag" Spalte A
"Eintrag" Spalte B = Zeitstempel

Nun habe ich das Problem, dass sich der Zeitstempel immer für alle Felder aktualisiert und komme nicht dahinter,
wie ich das lösen kann.

Kann mir jemand helfen? (Hoffe ihr versteht meine Schilderung) 
19
Grüße

Kai


Angehängte Dateien
.xlsx   Testmappe.xlsx (Größe: 94,85 KB / Downloads: 9)
Antworten Top
#2
Hallo

- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Code rechts reinkopieren

dann...

- markiere auf Blatt "Eintrag" Spalte A:B
- Rechtsclick; Zellen formatieren
- unter Schutz den Haken raus

- Rechtsclick auf den Tabellenblattreiter
- Blatt schützen; Haken bei "Gesperrte Zellen auswählen" rausnehmen; OK

- A2 auswählen und scannen


Code:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Fehler
    Const APPNAME = "Worksheet_Change"
   
    If Not Intersect(Range("A:A"), Target) Is Nothing Then
        If Target.Count > 1 Then
            MsgBox "Zellen nur einzeln bearbeiten", vbOKOnly
            With Application
                .EnableEvents = False
                .Undo
            End With
            Exit Sub
        End If
       
        If Target <> "" Then
       
            Application.EnableEvents = False
            Target.Offset(0, 1) = Format(Now, "YYYY.MM.DD hh:mm:ss")
           
            Target.Offset(1, 0).Select
        End If
    End If
   
   
    '*** Fehlerbehandlung
    Err.Clear
Fehler:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Fehler in Sub """ & APPNAME & """" & vbCrLf _
        & "Fehlernummer: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub

LG UweD

Hallo


zusätzlich noch ein paar Prüfungen


Code:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Scann As String
    Dim TB1 As Worksheet, Sp As Integer
   
    Set TB1 = Sheets("Barcodes")
    Sp = 1 'Prüfung aus Spalte A
   
   
    On Error GoTo Fehler
    Const APPNAME = "Worksheet_Change"
   
   
    If Not Intersect(Range("A:A"), Target) Is Nothing Then
        If Target.Count > 1 Then
            MsgBox "Zellen nur einzeln bearbeiten", vbOKOnly
            With Application
                .EnableEvents = False
                .Undo
                .EnableEvents = True
            End With
            Exit Sub
        End If
       
        If InStr(Target, " ") > 0 Then
            Scann = Left(Target, InStr(Target, " ") - 1)
            If WorksheetFunction.CountIf(TB1.Columns(Sp), Scann) > 0 Then
           
                Application.EnableEvents = False
                Target.Offset(0, 1) = Format(Now, "YYYY.MM.DD hh:mm:ss")
               
                Target.Offset(1, 0).Select
            Else
                MsgBox "Artikelnummer '" & Scann & "' nicht vorhanden", vbOKOnly
                With Application
                    .EnableEvents = False
                    .Undo
                    .EnableEvents = True
                End With
            End If
        Else
            MsgBox "Scan fehlerhaft", vbOKOnly
            With Application
                .EnableEvents = False
                .Undo
                .EnableEvents = True
            End With
        End If
    End If
   
   
    '*** Fehlerbehandlung
    Err.Clear
Fehler:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Fehler in Sub """ & APPNAME & """" & vbCrLf _
        & "Fehlernummer: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub


LG UweD
[-] Folgende(r) 1 Nutzer sagt Danke an UweD für diesen Beitrag:
  • Kai Schröder
Antworten Top
#3
        Moin Uwe!

Danke vielmals, erstmal macht der Code genau was ich beschrieben hatte. (Sogar etwas mehr)

Habe nun noch die Schwierigkeit, dass ich den Wert aus Spalte "A" in einem anderen Tabellenblatt
ausgeben möchte, aber NUR den Wert des letzten/aktuellsten Zeitstempels.
Da kommt mein Sverweis leider an seine Grenzen, der zeigt mir nur den ersten Wert in der Liste...

Hat nochmal jemand einen Tipp? 

[
Bild bitte so als Datei hochladen: Klick mich!
]
Antworten Top
#4
Guten Morgen zusammen!

Hat jemand eine Idee? 
Hab die Datei nochmal hinzugefügt.

Wäre klasse, wenn hier jemand helfen könnte!


Angehängte Dateien
.xlsm   Testmappe.xlsm (Größe: 439,73 KB / Downloads: 3)
Antworten Top
#5
Hallo nochmal

Code:
Dashboard B2: =VERWEIS(2;1/(Eintrag!$D$2:$D$10000=[@Artikel]);Eintrag!$A$2:$A$10000)

und runterkopieren


LG UweD
[-] Folgende(r) 1 Nutzer sagt Danke an UweD für diesen Beitrag:
  • Kai Schröder
Antworten Top
#6
Klasse! Danke Dir!
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste