Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
672to676
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
672to676
672to676
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Änderung von Einträgen nach Eingabe

Änderung von Einträgen nach Eingabe
26.09.2005 11:28:16
Einträgen
Hallo,
hatte mich schonmal hier gemeldet, vielleicht hat diesmal jemand eine Idee.
Folgendes, habe in Excel 2002 eine Tabelle, dort befinden sich 8 Spalten. In der 1.Spalte trage ich eine Ziffer von 1-7 ein, in den folgenden 7 spalten werden automatisch Striche gesetzt(Anzahl je nach Ziffer)(BSP: trage ich 3 ein, werden in den ersten 3 spalten je ein Strich gesetzt). Diese Eintragungen müssten auch von Hand abänderbar sein.
Hat dazu jemand ne Lösung?

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Änderung von Einträgen nach Eingabe
26.09.2005 12:25:14
Einträgen
Ich hab ja schonmal so einen kleinen Ansatz:
Als Beispiel:
Public

Function Druck_setzen(ByVal k As Integer, ByVal j As Integer)
For i = 1 To 14 'Spalten
If k = 7 Then
'die 7 Tagewoche
sp = Chr(65 + i)
Application.Range(sp & j + 3).Value = "x"
ElseIf k = 6 Then
'die 6 Tagewochen
If i = 7 Or i = 14 Then
Else
sp = Chr(65 + i)
Application.Range(sp & j + 3).Value = "x"
End If
ElseIf k = 5 Then
'Die 5 Tagewoche
If i < 6 Or i > 7 And i < 13 Then
sp = Chr(65 + i)
Application.Range(sp & j + 3).Value = "x"
End If
ElseIf k = 3 Then
'Die 3 Tagewoche
If i = 1 Or i = 3 Or i = 5 Or i = 8 Or i = 10 Or i = 12 Then
sp = Chr(65 + i)
Application.Range(sp & j + 3).Value = "x"
End If
ElseIf k = 2 Then
Application.Range("B" & j + 3).Value = "x"
Application.Range("D" & j + 3).Value = "x"
Application.Range("F" & j + 3).Value = "x"
Application.Range("I" & j + 3).Value = "x"
Application.Range("K" & j + 3).Value = "x"
End If
Next i
End Function

Nur wie bekomme ich das hin, das er die Spalte nach Einträgen prüft und dann die Kreuze automatisch setzt?
Anzeige
AW: Änderung von Einträgen nach Eingabe
26.09.2005 14:17:09
Einträgen
Hi,
folgendes ins Modul des Tabellenblattes:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim a As Integer
If Target.Column <> 1 Then Exit Sub
If Not IsNumeric(Target.Value) Then Exit Sub
If Target.Value > 7 Then
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
MsgBox "Bitte max '7' eingeben"
Exit Sub
End If
For a = 2 To Target.Value + 1
Cells(Target.Row, a).Value = "x"
Next a
End Sub

Schönen Gruß,
Andi
AW: Änderung von Einträgen nach Eingabe
26.09.2005 15:25:00
Einträgen
Fantastisch. Klappt sehr gut.
Kann man da eigentlich noch einbauen, das bei 2,3,4 die Kreuze zufällig gesetzt werden?
Vielen vielen Dank schonmal
Anzeige
AW: Änderung von Einträgen nach Eingabe
26.09.2005 16:21:45
Einträgen
Hi,
hab ich das richtig verstanden: bei Eingabe von 2, 3 oder 4 sollen entsprechend 2, 3 oder 4 Kreuzchen zufällig auf die 7 Spalten verteilt werden? Und bei 1, 5, 6 und 7 bleibt alles beim alten?
Eine Art Zufallsverteilung bekommt man mit folgendem Code hin, ob das einer strengen statistischen oder stochastischen Überprüfung standhält kann ich aber leider nicht beurteilen.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim a As Integer
Dim b As Integer
b = 0
If Target.Column <> 1 Then Exit Sub
If Not IsNumeric(Target.Value) Then Exit Sub
If Target.Value > 7 Then
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
MsgBox "Bitte max '7' eingeben"
Exit Sub
End If
Select Case Target.Value
Case 2, 3, 4
For a = 2 To 8
If 8 - a < Target.Value - b Then
Cells(Target.Row, a).Value = "x"
Else
If Rnd() > (1 / 7) * Target.Value Then
Cells(Target.Row, a) = "x"
b = b + 1
End If
End If
If b = Target.Value Then Exit Sub
Next a
Case Else
For a = 2 To Target.Value + 1
Cells(Target.Row, a).Value = "x"
Next a
End Select
End Sub

Schönen Gruß,
Andi
Anzeige
AW: Änderung von Einträgen nach Eingabe
26.09.2005 19:52:24
Einträgen
Du bist mein persönlicher Held *g* Funzt prima.
Thanks
gern geschehen...
26.09.2005 22:55:21
Andi
Danke für die Rückmeldung.
Schönen Gruß,
Andi
AW: gern geschehen...
27.09.2005 15:44:21
frekuz
kleiner Pferdfuss ist allerdings dabei, die Kreuze werden erst gemacht, wenn ich was in die Zelle eintrage. bei ner Kopieraktion dieser Spalte von einem Tabellenblatt ins Andere, zieht die Funktion nicht. Obowhl ja eindeutig ein Change auf diesen Zellen liegt.

240 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige