Anzeige
Archiv - Navigation
936to940
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
936to940
936to940
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datensatz überschreiben!?

Datensatz überschreiben!?
07.01.2008 18:32:00
Julian
Hallo Liebe Excel Profis und die, die es werden wollen.
Ich bin Einsteiger und habe ein kleines Problem von dem ich hoffe, es mit eurer Hilfe lösen zu können.
Ich habe ein Programm für eine Rohdichtenberechnung geschrieben.
Die Ergebnise dieser Berechungen werden auf einem Tabellenblatt in der Spalt 6, Zeile 1 -10 abgelegt.
(max. 10 sollen zwischengespeichert werden)

Sub ProbedatenR()
Dim Z As Integer
For Z = 1 To 10
If Worksheets("Tab1").Cells(Z, 6) = 0 Then
Worksheets("Tab1").Cells(Z, 6) = Textbox12
If Worksheets("Tab1").Cells(Z, 6) > 0 Then Exit For
End If
Next Z
End Sub


Soweit klappt auch alles, nun soll er aber bei der 11 Berechung, die 1 abgelegte Berechung überschreiben und bei der 12 Berechung dann die 2 abgelegte überscheiben, bei der 13 Berechnung die 3 und so weiter...
Also müsste er sich doch, wenn er in die 12 Berechung geht und die dann in Zeile 2 schreiben soll merken können, das er schon bei der 11 Berechung in Zeile 1 Neu geschrieben bzw. überschrieben hat.
Hoffe ihr könnt nachvollziehen wo ich drauf hinaus will.
Mein Lösungsansatz wäre ein Vergleich oder ähnliches, hoffe ihr könnt mir helfen.
Mit freundlichem Gruß
Julian

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datensatz überschreiben!?
07.01.2008 22:29:00
Daniel
Hi
hier mal 2 verschiedene Lösungansätze, erstmal der "normale Weg:

Sub ProbedatenR()
Dim Z As Integer
Dim Zeile as integer
For Z = 1 To 13
Zeile = Zeile + 1
If Zeile >10 then Zeile = 1
Worksheets("Tab1").Cells(Zeile, 6) = Textbox12
Next Z
End Sub


Ne zweite, etwas unkonventionellere Möglichkeit wäre diese, die geht aber nur, wenns genau 10 Zeilen sind:


Sub ProbedatenR()
Dim Z As Integer
Dim Zeile as integer
For Z = 1 To 13
Zeile = CInt(right(z,1)) + 1
Worksheets("Tab1").Cells(Zeile, 6) = Textbox12
Next Z
End Sub


die If-Abfragen müssen raus, weil sie das Überschreiben der Zellen verhindern.
Gruß, Daniel

Anzeige
AW: Datensatz überschreiben!?
08.01.2008 12:03:00
Julian
Hallo Daniel!
Danke erstmal für deine Hilfestellung.
Leider hat Sie nicht den nötigen Erfolg gebracht wobei es auch sein kann das ich es falsch interpretiere.
Mit deinem Ansatz überschreibt er mir alle 10 Zellen auf einmal.
Dies soll gerade nicht der Fall sein. Er soll, wenn die Zellen 1 - 10 voll sind, also die 11 Berechung gemacht wird, wieder bei 1 anfangen zu schreiben ohne den Inhalt von den Zellen 2 - 10 dabei zu überschreiben und dann bei der 12 Berechung in Zelle 2 schreiben ohne den Inhalt von 1, 3 - 10 zu überschreiben.
Zahlenbeispiel:
1 6 6 6
2 2 7 7
3 3 3 8
4 4 4 4
5 5 5 5 etc.....
Also wenn ich deinen Ansatz falsch interpretiere dann wäre es nett wenn du mir des genauer erläutern könntest. Danke noch einmal für deine Antwort.
Mit freundlichem Gruß
Julian

Anzeige
AW: Datensatz überschreiben!?
08.01.2008 19:33:00
Daniel
Hi
dann beschreib doch mal genauer, wo er den 11. 12. und 13. Wert hinschreiben soll.
vermutlich in die Spalte daneben.
dann musst du nur für die Spalte ebenfalls eine Variable einrichten.
diese bekommt den Startwert 6 und muss jedesmal, wenn die Zeilenvariable zurückgesetzt wird, um 1 erhöht werden.

Sub ProbedatenR()
Dim Z As Integer
Dim Zeile as integerm Spalte as integer
Spalte = 6
For Z = 1 To 13
Zeile = Zeile + 1
If Zeile >10 then
Zeile = 1
Spalte = Spalte + 1
end if
Worksheets("Tab1").Cells(Zeile, Spalte) = Textbox12
Next Z
End Sub


Gruß, Daniel

Anzeige
AW: Datensatz überschreiben!?
08.01.2008 20:38:00
Julian
Hey Daniel,
es lag an meinem Verständnis ich hab des nun hinbekommen:

Sub ProbedatenR()
Dim Z As Integer
For Z = 1 To 10
If Worksheets("Tab1").Cells(Z, 6) = 0 Then
Worksheets("Tab1").Cells(Z, 6) = TB12
If Worksheets("Tab1").Cells(Z, 6) > 0 Then Exit For
End If
Next Z
If IsNumeric(Sheets("Tab1").Cells(12, 6)) = False Then
Worksheets("Tab1").Cells(12, 6) = 0
End If
Z = Worksheets("Tab1").Cells(12, 6)
Z = Z + 1
If Z > 10 Then
Z = 1
End If
Worksheets("Tab1").Cells(Z, 6) = TB12
Worksheets("Tab1").Cells(12, 6) = Z
End Sub


Danke nochmal für deine Hilfe!
Gruß Julian

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige