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

Tabelle ausfüllen

Tabelle ausfüllen
05.12.2014 07:37:44
Markus
Guten Morgen,
Und zwar würde ich gerne über VBA (über ein Modul) ihm beibringen das :
Punkt 1.
Wie sag ich ihm im VBA das er den text was in einen text feld eingetragen wird in eine gewisse spalte einträgt?
2. wenn aber in der darüberen zeile bzw. in spalte A und darüber etwas steht soll er die nächste zeile mit dem text ausfüllen.
3. wenn aber im datum nicht mehr 01(für jänner) steht soll er es in zeile z.b. 200 reinschreiben und dann sollen natürlich wieder die anderen punkte funktionieren also wenn in 200 in A200 ein text steht also ungleich 0 ist dann soll er den folge text in A201 schreiben und wenn jetzt statt 01 02 steht (für februar) soll er in zeile 200 anfangen.
danke euch
(werde versuchen einen screen noch zumachen das ihr vllt genauer seht was ich meine ist leider ein sehr großes sheet es geht um sierennummern die monatsabhäging sind und mit mehreren ja/nein kästchen gefüllt sind wo er dann immer in eine bestimmte spalte einen 1 eintragen muss bei ja.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabelle ausfüllen
05.12.2014 07:43:00
Markus
Userbild

Starthilfe
05.12.2014 09:47:08
MCO
Hallo!
Zu 1 :
Wo soll der Text denn herkommen? Eingabemaske, inputbox, Zellinhalt?
Zuweisung über Range("Zelle"), zb. Range("B4") = "Dein Text" oder Range("B4") = Application.inputbox("Text?") oder Range("B4") = Range("A1")
Zu 2 :
du mußt dir ein Ereignis in dem Modul Tabelle 1 auswählen:
Private Sub Worksheet_Change(ByVal Target As Range)
'Hier wird nach jeder Dateneingabe die Position geprüft
'gilt aber nur bei "live-Änderungen", Änderungen über eingabemaske würde ich in der Maske lösen. _
End Sub
prüft die Spalte mit dem Versatz (zeile,spalte)
if Range("B4").offset(-1,0) "" or cells(activecell.row-1,"a") "" then
'mach was
endif
Versuch erstmal was aufzubauen und stell dann die Tabelle mit Code ein (ohne Echt-Daten).
Niemand hat Lust, deine Tabelle nachzubauen, oder aus dem Nichts anzufangen....
Gruß, MCO

Anzeige
AW: Starthilfe
09.12.2014 14:41:20
Markus
Naja ich würde über eine eingabemaske gerne die text felder definieren wo sie das was dort geschrieben wurde (wenn man auf den "speicher" button drückt) in die dafür entsprechende zeile/spalte schreibt ... was ich auch nochnicht ganz verstehe ist ich mach ein Kontollkästchen also endweder ja/nein aber wenn ich es anklicke überträgt er mir das nicht warum nicht?(bei nein soll nichts passieren bei Ja soll er den wert 1 in eine zeile/spalte schreiben.
danke

AW: Starthilfe
09.12.2014 14:54:34
Markus
sry und das was ich so schwer empfinde ist das alles an die zeile/spalte A1 gekoppelt ist .. (weil es kann sein das eine 1 dort reingehört wo darüber keine 1 steht ) weis noch nicht wie ich das lösen soll habt ihr dazu einen tipp / code?

Anzeige
AW: Starthilfe
10.12.2014 08:48:45
Markus

Private Sub CommandButton1_Click()
Dim lZeile As Long
lZeile = 2
Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))  ""
lZeile = lZeile + 1
Loop
Tabelle1.Cells(lZeile, 1) = CStr(lZeile)
ListBox1.AddItem CStr(lZeile)
ListBox1.ListIndex = ListBox1.ListCount - 1
End Sub
Private Sub CommandButton2_Click()
Dim lZeile As Long
If ListBox1.ListIndex = -1 Then Exit Sub
lZeile = 2
Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))  ""
If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
Tabelle1.Rows(CStr(lZeile & ":" & lZeile)).Delete
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
Exit Do
End If
lZeile = lZeile + 1
Loop
End Sub
Private Sub CommandButton3_Click()
Dim lZeile As Long
If ListBox1.ListIndex = -1 Then Exit Sub
If Trim(CStr(TextBox1.Text)) = "" Then
MsgBox "Sie müssen mindestens einen Namen eingeben!", vbCritical + vbOKOnly, "FEHLER!"
Exit Sub
End If
lZeile = 2
Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))  ""
If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
Tabelle1.Cells(lZeile, 1).Value = Trim(CStr(TextBox1.Text))
Tabelle1.Cells(lZeile, 2).Value = TextBox2.Text
Tabelle1.Cells(lZeile, 3).Value = TextBox3.Text
Tabelle1.Cells(lZeile, 4).Value = TextBox4.Text
Tabelle1.Cells(lZeile, 5).Value = TextBox5.Text
Tabelle1.Cells(lZeile, 6).Value = TextBox6.Text
Tabelle1.Cells(lZeile, 7).Value = TextBox7.Text
Tabelle1.Cells(lZeile, 8).Value = TextBox8.Text
Tabelle1.Cells(lZeile, 9).Value = TextBox9.Text
Tabelle1.Cells(lZeile, 10).Value = TextBox10.Text
Tabelle1.Cells(lZeile, 11).Value = TextBox11.Text
If CheckBox1 Then
Tabelle1.Cells(lZeile, 12) = "1"
Else
Tabelle1.Cells(lZeile, 12) = ""
End If
If ListBox1.Text  Trim(CStr(TextBox1.Text)) Then
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End If
Exit Do
End If
lZeile = lZeile + 1
Loop
End Sub
Private Sub CommandButton4_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
Dim lZeile As Long
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
TextBox4 = ""
TextBox5 = ""
TextBox6 = ""
TextBox7 = ""
TextBox8 = ""
TextBox9 = ""
TextBox10 = ""
TextBox11 = ""
CheckBox1 = False
If ListBox1.ListIndex >= 0 Then
lZeile = 2
Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))  ""
If ListBox1.Text = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value)) Then
TextBox1 = Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))
TextBox2 = Tabelle1.Cells(lZeile, 2).Value
TextBox3 = Tabelle1.Cells(lZeile, 3).Value
TextBox4 = Tabelle1.Cells(lZeile, 4).Value
TextBox5 = Tabelle1.Cells(lZeile, 5).Value
TextBox6 = Tabelle1.Cells(lZeile, 6).Value
TextBox7 = Tabelle1.Cells(lZeile, 7).Value
TextBox8 = Tabelle1.Cells(lZeile, 8).Value
TextBox9 = Tabelle1.Cells(lZeile, 9).Value
TextBox10 = Tabelle1.Cells(lZeile, 10).Value
TextBox11 = Tabelle1.Cells(lZeile, 11).Value
CheckBox1 = Tabelle1.Cells(lZeile, 12).Value
Exit Do
End If
lZeile = lZeile + 1
Loop
End If
End Sub
Private Sub UserForm_Activate()
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End Sub
Private Sub UserForm_Initialize()
Dim lZeile As Long
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
TextBox4 = ""
TextBox5 = ""
TextBox6 = ""
TextBox7 = ""
TextBox8 = ""
TextBox9 = ""
TextBox10 = ""
TextBox11 = ""
CheckBox1 = False
ListBox1.Clear
lZeile = 2
Do While Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))  ""
ListBox1.AddItem Trim(CStr(Tabelle1.Cells(lZeile, 1).Value))
lZeile = lZeile + 1
Loop
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige