3.3k Aufrufe
Gefragt in Datenbanken von devekusu Einsteiger_in (11 Punkte)
In Excel möchte ich einen Wert durch 24 teilen und das Ergebnis unverändert in 24 Spalten eintragen. Beispiel:

In Spalte A existiert 365 unterschiedliche Werte, wie z.B.

A1: 654789
A2:5444545
...
A365:5464545

Die Werte der einzelnen Zellen erst durch 24 teilen, also (=654789/24), dann das Ergebnis jeweils in die Spalte B1:B24 (also 24 mal) eintragen, so dass die Summe der Zellen B1:B24 wieder 654789 ergibt. Nun soll diese Berechnung für die restlichen 364 Zellen genauso erfolgt werden.
Das Ergebnis des zweiten Wertes(A2) soll in B25:B48 stehen usw...

Gibt es eine Möglichkeit (bestimmt gibt es eine!) durch VBA dies mit Hilfe einer Schleife zu programmieren oder geht es in Excel ohne den VBA-Einsatz.

Für euren Beitrag bedanke ich mich vorab und warte auf euren Antworten.

2 Antworten

0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo ???

nachfolgendes Makro ollte das machen, was Du Dir vorgestellt hast.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Werte_einfuegen()
Dim intWert As Integer
Dim intFirstRow As Integer
Dim intEinzelwerte As Integer
Dim dblErgebnis As Double
Application.ScreenUpdating = False

Columns(2).Clear

For intWert = 1 To 365
intFirstRow = Range("B65536").End(xlUp).Offset(1, 0).Row
On Error Resume Next
dblErgebnis = Cells(intWert, 1) / 24
If intFirstRow = 2 Then intFirstRow = 1
If dblErgebnis > 0 Then
For intEinzelwerte = intFirstRow To intFirstRow + 23
Cells(intEinzelwerte, 2) = dblErgebnis
Next
End If
On Error GoTo 0
Next
End Sub
Ich hoffe, Du kommst klar.

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von devekusu Einsteiger_in (11 Punkte)
Hallo Coros,

ich fand deine Lösung wunderbar, es hat alles geklappt, wie ich es mir gewünscht habe, Vielen Dank....

Ein großer Lob geht an dich Coros...

Ich hätte da aber (für Zukunft) eine kleine Bemerkung:

Es wäre toll, wenn Kommentare hinter den einzelnen Codes eingesetzt werden könnten.
Gilt nicht nur für dich Coros, sondern an alle Forum-Teilnehmer!

Ich möchte nämlich die Lösungen auch nachvollziehen.
Dein Code kann ich mitlerweile nachvollziehen Coros....

Danke nochmals für deine einwandfreie Lösung....
...