Thema Datum  Von Nutzer Rating
Antwort
23.06.2020 09:46:21 graber
NotSolved
Blau Summenzeile
25.06.2020 00:08:28 Gast34965
NotSolved
26.06.2020 08:27:26 Gast89304
NotSolved
27.06.2020 01:28:42 Gast61544
NotSolved
27.06.2020 15:07:30 Gast61116
Solved
30.06.2020 15:15:04 graber
NotSolved
01.07.2020 10:32:42 graber
NotSolved

Ansicht des Beitrags:
Von:
Gast34965
Datum:
25.06.2020 00:08:28
Views:
614
Rating: Antwort:
  Ja
Thema:
Summenzeile
Option Explicit

Public daten As Collection
Public import As Range
Public auswertung As Range
Public pos_aus

Sub teilsummen()

Set import = Sheets("Import").Range("A1")
Set auswertung = Sheets("Auswertung").Range("A1")
Set daten = New Collection

pos_aus = 1

auslesen einlesen

Set import = Nothing
Set auswertung = Nothing
Set daten = Nothing

End Sub


Function einlesen()

Dim einZeil As Long
Dim aktzeil As String

einZeil = 1
aktzeil = import.Cells(einZeil, 1).Value

While aktzeil <> ""

On Error Resume Next

aktzeil = daten(aktzeil)
If Err.Number <> 0 Then
   daten.Add aktzeil, aktzeil
End If
einZeil = einZeil + 1
aktzeil = import.Cells(einZeil, 1).Value
Wend
einlesen = einZeil - 1
End Function

Function auslesen(elemente)
Dim head As Long
Dim data As Long
Dim akt As Double
Dim sumPos As Double
Dim sumGes As Double

For head = 1 To daten.Count
    sumPos = 0
    For data = 1 To elemente
        
        If CStr(import.Cells(data, 1).Value) = CStr(daten(head)) Then
        akt = import.Cells(data, 2).Value
        With auswertung
        .Cells(pos_aus, 1).Value = "'" & CStr(daten(head))
        .Cells(pos_aus, 2).Value = akt
        sumPos = sumPos + CDbl(akt)
        End With
        pos_aus = pos_aus + 1
        End If
    Next

With auswertung
With .Cells(pos_aus, 1)
    .Value = "'" & CStr(daten(head))
    .Font.Bold = True
    .Borders(xlEdgeTop).LineStyle = xlContinuous
End With
With .Cells(pos_aus, 2)
    .Value = sumPos
    .Font.Bold = True
    .Borders(xlEdgeTop).LineStyle = xlContinuous
End With


sumGes = sumGes + sumPos
sumPos = 0
pos_aus = pos_aus + 2
End With


Next

pos_aus = pos_aus + 1

With auswertung.Cells(pos_aus, 1)
    .Value = "Gesamt"
    .Font.Bold = True
    .Borders(xlTop).LineStyle = xlContinuous
    .Borders(xlEdgeBottom).LineStyle = xlDouble
End With

With auswertung.Cells(pos_aus, 2)
    .Value = sumGes
    .Font.Bold = True
    .Borders(xlTop).LineStyle = xlContinuous
    .Borders(xlEdgeBottom).LineStyle = xlDouble
End With

End Function

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
23.06.2020 09:46:21 graber
NotSolved
Blau Summenzeile
25.06.2020 00:08:28 Gast34965
NotSolved
26.06.2020 08:27:26 Gast89304
NotSolved
27.06.2020 01:28:42 Gast61544
NotSolved
27.06.2020 15:07:30 Gast61116
Solved
30.06.2020 15:15:04 graber
NotSolved
01.07.2020 10:32:42 graber
NotSolved