Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1080to1084
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
Daten per VBA eintragen
16.06.2009 09:51:30
Andreas
Hallo zusammen,
Anbei mein folgendes Problem.
Ich habe 3 Suchbedingungen, die Ich kombienieren muss um die Bemerkung einfügen zu können.
Unsere Abteilungsleiter sollen zu den bei Ihnen entstandenen Problemen eine Maßnahme definieren.
Um das Recht einfach ohne lang zusuchen gestalten zu können, soll der Leiter den Monat wählen, seine Abteilung und dann die Nummer des Vorfalls (roter Zettel). Anschließend muss er im Feld Bemerkung die Maßnahme verfassen und auf Speichern klicken.
Swoeit so gut. Nun die Funktion welche hinter dem Speichern Knopf laufen soll.
Die Funktion soll Spalte A nach dem Monat durchsuchen, Spalte C nach der Abteilung und Spalte B nach der Nummer. Anschließend soll die Funktion die Werte aus dem Bemerkungsfeld in die Spalte D in Kombination mit der davor gefunden Zeile eintragen.
Anbei noch eine Musterdatei.
Ich hoff Ihr könnt mir helfen. Ich komme einfach nicht weiter.
https://www.herber.de/bbs/user/62458.xls

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten per VBA eintragen
16.06.2009 14:50:09
fcs
Hallo Andreas,
der Code für den Speichern-Button muss etwa wie folgt aussehen.
Gruß
Franz

Private Sub Speichern_Click()
Dim wksListe As Worksheet
Dim Zeile As Long, bolGefunden As Boolean
Set wksListe = Worksheets("Tabelle1")
With wksListe
For Zeile = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row
If .Cells(Zeile, 1).Value = Me.ComboBox1.Value _
And .Cells(Zeile, 3).Value = Me.ComboBox2.Value _
And .Cells(Zeile, 2).Value = Val(Me.TextBox3.Value) Then
.Cells(Zeile, 4).Value = Me.TextBox2.Value
bolGefunden = True
Exit For
End If
Next
If bolGefunden = False Then
MsgBox "Für gewählten Monat, Montage und roter Zettel" _
& " wurde keine Zeile gefunden!"
End If
End With
End Sub
'oder wenn die Liste sehr lang ist mit der schnelleren Such-Methode
Private Sub Speichern_Click()
Dim wksListe As Worksheet, Zelle As Range, strAdresse1 As String
Dim bolGefunden As Boolean, varSuchen
Set wksListe = Worksheets("Tabelle1")
With wksListe
'Nr. Roter Zettel als Suchbegriff setzen
varSuchen = Val(Me.TextBox3.Value)
'Nummer in Spalte B suchen
Set Zelle = .Columns(2).Find(what:=varSuchen, LookIn:=xlValues, lookat:=xlWhole)
If Zelle Is Nothing Then
bolGefunden = False
Else
strAdresse1 = Zelle.Address
Do
If .Cells(Zelle.Row, 1).Value = Me.ComboBox1.Value _
And .Cells(Zelle.Row, 3).Value = Me.ComboBox2.Value Then
.Cells(Zelle.Row, 4).Value = Me.TextBox2.Value
bolGefunden = True
Exit Do
End If
'Suche wiederholen
Set Zelle = .Columns(2).FindNext(After:=Zelle)
Loop Until Zelle.Address = strAdresse1
End If
If bolGefunden = False Then
MsgBox "Für gewählten Monat, Montage und roter Zettel" _
& " wurde keine Zeile gefunden!"
End If
End With
End Sub


Anzeige
AW: Daten per VBA eintragen
17.06.2009 07:51:57
Andreas
Hallo Franz,
Ich danke dir vielmals. Die Abfrage der Zeile habe ich auf verschiedene Weisen hinbekommen aber glaubst du ich wäre einmal auf das verwenden der Zeile gekommen. Endlich sind die gestressten Abende zu Ende.
Viele Dank

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige