Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zwischen jeweil. Texten zusammenrechnen

Forumthread: Zwischen jeweil. Texten zusammenrechnen

Zwischen jeweil. Texten zusammenrechnen
11.02.2008 21:57:01
Wolfgang
Hallo,
in der Spalte C befinden sich Monatsnamen, in Spalte B die Wochendaten, der Monatsname in Spalte C erscheint jeweils nach den Wochenangaben. Beispiel: B1:B4 Wochen "von - bis", dann in Spalte C5 Monatsname in der Folge dann wieder B6:B9 (kann je nach Wochen aber variieren, so dass nicht immer eine Konstante von 4 Wochen zugrunde gelegt werden kann) Wochen "von - bis" und C10 dann wieder der Monatsname usw.; Wie kann ich erreichen, dass die Zeilen zwischen den jeweiligen Monatsnamen (die Zwischenräume in Spalte C sind leer) in den Spalten D:G jeweils untereinander zusammengerechnet werden, wenn die letzte Woche jeweils in den Zwischenräumen in den Spalten D:G gefüllt ist? Das Ergebnis sollte dann jeweils in der Zeile erscheinen, in der sich der jeweils "letzte" Monatsname befindet - Danke schon jetzt wieder für die Rückmeldung.
Herzliche Grüße
Wolfgang

Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zwischen jeweil. Texten zusammenrechnen
11.02.2008 22:04:00
Josef
Hallo Wolfgang,
sollen wir deine Tabelle nachbauen?

Gruß Sepp



AW: Zwischen jeweil. Texten zusammenrechnen
12.02.2008 06:08:16
Wolfgang
Hallo Josef,
herzlichen Dank für die Rückmeldung. Ich war mir nicht sicher, ob ich eine Musterdatei hochladen sollte. Hier diese nun anbei. Danke schon jetzt wieder für die erneute Rückmeldung.
Herzliche Grüße
Wolfgang

Die Datei https://www.herber.de/bbs/user/49830.xls wurde aus Datenschutzgründen gelöscht


Anzeige
AW: Zwischen jeweil. Texten zusammenrechnen
12.02.2008 10:05:00
Josef
Hallo Wolfgang,
probier diesen Code im Modul de Tabelle.
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ErrExit
With Target(1, 1)
    If .Row > 6 And .Column > 3 And .Column < 8 Then
        If Cells(.Row + 1, 3) <> "" Then
            If Application.CountA(Range(Cells(.Row, 4), Cells(.Row, 7))) = 4 Then
                Application.EnableEvents = False
                Cells(.Row + 1, 4) = Application.Sum(Range(Cells(Cells(.Row + 1, 3).End(xlUp).Row + 1, 4), Cells(.Row, 4)))
                Cells(.Row + 1, 5) = Application.Sum(Range(Cells(Cells(.Row + 1, 3).End(xlUp).Row + 1, 5), Cells(.Row, 5)))
                Cells(.Row + 1, 6) = Application.Sum(Range(Cells(Cells(.Row + 1, 3).End(xlUp).Row + 1, 6), Cells(.Row, 6)))
                Cells(.Row + 1, 7) = Application.Sum(Range(Cells(Cells(.Row + 1, 3).End(xlUp).Row + 1, 7), Cells(.Row, 7)))
                Range(Cells(.Row + 1, 4), Cells(.Row + 1, 7)).Font.Bold = True
            End If
        End If
    End If
End With
ErrExit:
Application.EnableEvents = True
End Sub


Gruß Sepp



Anzeige
klappt irgendwie nicht
12.02.2008 19:19:00
Wolfgang
Hallo Josef,
erneut herzlichen Dank für die Rückmeldung und sorry, dass ich mich jetzt erst wieder melde -war den ganzen Tag außer Haus-; Ich habe Deinen Code hinter das Arbeitsblatt kopiert und er läuft auch grundsätzlich. Allerdings rechnet er nicht die jeweiligen Zwischenräume der jeweiligen Monatsnamen zusammen. Da werden anscheinend irgendwie alle Zellen zusammengerechnet. Hättest Du da eine Idee, was da evtl. angepaßt werden müßte? - Danke schon jetzt wieder für die Rückmeldung.
Herzliche Grüße
Wolfgang

Anzeige
AW: klappt irgendwie nicht
12.02.2008 20:22:00
Josef
Hallo Wolfgang,
ich habe den Code in deiner Datei getestet. Hast du evtl. Leerzeichen in den Zwischenräumen?

Gruß Sepp



AW: klappt irgendwie nicht
12.02.2008 20:41:00
Wolfgang
Hallo Josef,
ich verwende im Moment auch noch die upgeloadete Datei um zu testen und habe Deine Frage aufgegriffen. Irgendwelche Leerzeichen konnte ich dabei nicht feststellen. Leider fehlen mir auch die tiefen Kenntnisse, um Deinen Code interpretieren bzw. lesen zu können. Vielleicht hast Du ja noch eine Idee, was ich hier evtl. falsch mache,
Gruß - Wolfgang

Anzeige
irgendwas mache ich falsch
13.02.2008 06:14:58
Wolfgang
Hallo Josef,
ich habe Deine Datei geladen und getestet. Gebe ich z.B über die Eingabemaske in erhalten die 13 ein, dann die 9 als Soll, hatte ich so vorbelegt und als IST dann die 6, wird mir auch in Spalte G das Ergebnis -3 angezeigt. In der nächsten Zeile wird das dann alles als Zusammenrechnung wiederholt (also neben August2007). Neben August 2007 sollten nun eigentlich die Zellen zwischen Juli 2007 und August 2007 -also von 32KW bis 35 KW zusammengerechnet werden. In der Folge dann 36:39 KW. etc.; Mache ich da evtl. noch was falsch oder müßte ich evtl. irgendetwas an den Excel-Einstellungen verändern?
Erneut schon jetzt wieder herzlichen Dank und Gruß.
Wolfgang

Anzeige
AW: irgendwas mache ich falsch
13.02.2008 17:47:00
Josef
Hallo Wolfgang,
lösche den Code in "Selection_Change" in der Tabelle und verwende diesen Code im UF.
Private Sub CommandButton3_Click()

Dim lLetzte As Long

Application.ScreenUpdating = False

With Worksheets("Stand")
    ' .Unprotect Password:="Geheim"
    .Range("A" & FundZeile).Value = WorksheetFunction.Proper(TextBox1.Value)
    .Range("B" & FundZeile).Value = WorksheetFunction.Proper(TextBox2.Value)
    .Range("C" & FundZeile).Value = WorksheetFunction.Proper(TextBox3.Value)
    .Range("D" & FundZeile).Value = TextBox4.Value
    .Range("E" & FundZeile).Value = WorksheetFunction.Proper(TextBox5.Value)
    .Range("F" & FundZeile).Value = TextBox6.Value
    .Range("G" & FundZeile).Value = TextBox6.Value - TextBox5.Value
    If Cells(FundZeile + 1, 3) <> "" Then
        Cells(FundZeile + 1, 4) = Application.Sum(Range(Cells(Cells(FundZeile, 3).End(xlUp).Row + 1, 4), Cells(FundZeile, 4)))
        Cells(FundZeile + 1, 5) = Application.Sum(Range(Cells(Cells(FundZeile, 3).End(xlUp).Row + 1, 5), Cells(FundZeile, 5)))
        Cells(FundZeile + 1, 6) = Application.Sum(Range(Cells(Cells(FundZeile, 3).End(xlUp).Row + 1, 6), Cells(FundZeile, 6)))
        Cells(FundZeile + 1, 7) = Application.Sum(Range(Cells(Cells(FundZeile, 3).End(xlUp).Row + 1, 7), Cells(FundZeile, 7)))
        Range(Cells(FundZeile + 1, 4), Cells(FundZeile + 1, 7)).Font.Bold = True
    End If
    lLetzte = IIf(.Range("A65536") <> "", 65536, .Range("A65536").End(xlUp).Row) + 1
    If lLetzte < 2 Then lLetzte = 2
    ' Label8.Caption = "Anzahl Telefon-Einträge: " & (lLetzte - 1)
    
    Call Zeilen_faerben
    
    With ListBox1
        Call Array_fuellen
        .Clear
        .Column = aTmp
    End With
    
    ' .Protect Password:="Geheim"
End With

Application.ScreenUpdating = True

CommandButton3.Enabled = False ' den Änder-Button sperren
CommandButton4.Enabled = False ' den Lösch-Button sperren
Unload Me
End Sub


Gruß Sepp



Anzeige
Danke Josef, läuft jetzt super
13.02.2008 21:11:44
Wolfgang
Hallo Josef,
habe Deinen Code entsprechend hineinkopiert. Er läuft jetzt super - dafür herzlichen Dank.
Gruß - Wolfgang
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige