Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zelle finden Datum in freie Spalte eintragen

Zelle finden Datum in freie Spalte eintragen
18.01.2016 20:09:32
Steffen
Hallo,
ich habe das erste mal einen VBA Code geschrieben/über Google zusammengeklaut.
Ich habe auch nicht wirklich ahnung von VBA. Ich bin absoluter beginner.
Folgendes möchte ich machen.
Es gibt eine datenbank mit 8 Spalten( lft.Nr.,Name,Vorname,AnmeldeID,E-Mail,Instutition, anmeldung Tag1 und Anmeldung Tag2.
Die Datenbank hat ca. 100 Zeilen.
Ich möchte nun über eine Eingabebox eine ID einscannen, welche dann in der Datenbank gesucht wir. Dies habe ich soweit auch hinbekommen.
Nun soll von der gefundenen Zelle (die wird aktuell ausgewählt) in der ersten leeren Spalte dieser Zeile das Datum inklusivve Uhrzeit in der Form TT.MM.JJJJ.hh.mm.ss eingetragen werden. Ausserdem soll diese Zelle grün eingefärbt werden. Anschließend soll eine Infobox erscheinen und den Text Herr Vornamme(Spalte 2) Nachname(Spalte3) der gesuchten Zeile, ist angemeldet. Wenn in der Infobox OK gedrückt wird soll die Eingabebox erneut erscheinen und der Vorgang von vorn beginnen.
Der Code den ich zusammen bekommen habe.
Ich habe versucht über diverse gefundene Cods dies in den unten eingefügten Code einzutragen hat aber alles nicht geklappt.
Da ich es lernen möchte würde ich mich freuen wenn Ihr mir das ergänzte/veränderte kommentieren würdet.
Jetzt schon vielen vielen Dank.
Sub Textsuchen()
Dim str_SuchString As String
Dim Counter1 As Integer
Dim Counter2 As Integer
Dim lngZeile As Long
Dim lngletzteSpalte As Long
str_SuchString = InputBox("Bitte Anmelde-ID scannen", "Suche...")
For Counter1 = 1 To ActiveSheet.Cells.SpecialCells(xlLastCell).Column
For Counter2 = 1 To ActiveSheet.Cells.SpecialCells(xlLastCell).Row
If Cells(Counter2, Counter1).Value = str_SuchString Then
Cells(Counter2, Counter1).Select
End If
Next
Next
End Sub

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zelle finden Datum in freie Spalte eintragen
18.01.2016 20:16:20
Sepp
Hallo Steffen,
da wäre eine Beispieldatei sehr hilfreich.
Gruß Sepp

AW: Zelle finden Datum in freie Spalte eintragen
18.01.2016 20:26:42
Steffen
https://www.herber.de/bbs/user/102867.xlsm
ist eine Testdatei, da die richtige erst in den nächsten Tagen durch online anmeldungen erstellt wird.

Anzeige
AW: Zelle finden Datum in freie Spalte eintragen
18.01.2016 20:47:58
Sepp
Hallo Steffen,
Sub Textsuchen()
Dim varRet As Variant, varSearch As String

Do
  varSearch = Application.InputBox("Bitte Anmelde-ID scannen", "Suche...", Type:=1)
  If IsNumeric(varSearch) Then
    varRet = Application.Match(Clng(varSearch), Columns(2), 0)
    If IsNumeric(varRet) Then
      With Cells(varRet, Columns.Count).End(xlToLeft).Offset(0, 1)
        .Value = Now
        .NumberFormat = "dd.MM.yyyy.hh.mm.ss"
      End With
      MsgBox "Frau/Herr " & Cells(varRet, 4).Text & " " & Cells(varRet, 3).Text & _
        " ist angemeldet!", vbInformation
      varSearch = ""
    ElseIf varSearch <> CStr(False) Then
      MsgBox "Ungüldige ID!", vbExclamation
    End If
  End If
Loop While varSearch <> CStr(False)

End Sub

Gruß Sepp

Anzeige
AW: Zelle finden Datum in freie Spalte eintragen
18.01.2016 20:54:34
Steffen
Hallo Sepp,
das ist SUPER.
Darf ich dich noch um 2 änderungen bitten?
Wenn am Tag 1 schon ein Eintrag drin ist,sprich es hat sich am Tag 1 schon jemand mit dem ID angemeldet soll eine Fehlermeldung erscheinen. Das gleiche dann auch für den 2.Tag. Zusätzlich soll der Eintrag in Tag 1 und 2 farblich(grün) makiert werden.

Anzeige
AW: Zelle finden Datum in freie Spalte eintragen
18.01.2016 21:25:16
Sepp
Hallo Steffen,
Sub Textsuchen()
Dim varRet As Variant, varSearch As String

Do
  varSearch = Application.InputBox("Bitte Anmelde-ID scannen", "Suche...", Type:=1)
  If IsNumeric(varSearch) Then
    varRet = Application.Match(Clng(varSearch), Columns(2), 0)
    If IsNumeric(varRet) Then
      If IsNumeric(Evaluate("MATCH(TODAY(),INT(" & varRet & ":" & varRet & "),0)")) Then
        MsgBox "Frau/Herr " & Cells(varRet, 4).Text & " " & Cells(varRet, 3).Text & _
          " wurde heute schon angemeldet!", vbExclamation
      Else
        With Cells(varRet, Columns.Count).End(xlToLeft).Offset(0, 1)
          .Value = Now
          .NumberFormat = "dd.MM.yyyy.hh.mm.ss"
          .Interior.Color = vbGreen
        End With
        MsgBox "Frau/Herr " & Cells(varRet, 4).Text & " " & Cells(varRet, 3).Text & _
          " ist angemeldet!", vbInformation
        varSearch = ""
      End If
    ElseIf varSearch <> CStr(False) Then
      MsgBox "Ungüldige ID!", vbExclamation
    End If
  End If
Loop While varSearch <> CStr(False)

End Sub

Gruß Sepp

Anzeige
AW: Zelle finden Datum in freie Spalte eintragen
19.01.2016 20:12:09
Steffen
Hallo Sepp,
vielen Dank das ist echt super.
Gruß
Steffen
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige