• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

door filter verborgen cellen niet meetellen

Status
Niet open voor verdere reacties.

taco86

Gebruiker
Lid geworden
22 feb 2008
Berichten
79
Goede middag allemaal,

Met de overgang van excel 2003 naar 2007 kan ik in het bestand cellen nog steeds verbergen met de filterfunctie. Alleen de somfunctie die over deze cellen heen staat neemt de som van alle cellen (verborgen en niet verborgen cellen).

Ik zou graag weer alleen de niet verborgen cellen op willen tellen, is waarschijnlijk ergens een vinkje, maar kan het niet vinden, hoop iemand anders wel.

Groeten Taco,
 
Misschien gebruik maken van Subtotaal.
Dit geeft normaal enkel de som,aantal... van de zichtbare cellen.

Cobbe
 
Bedankt voor je snelle reactie.

Dit is inderdaad wel een oplossing, maar dan moet ik aardig wat formules (over verschillende bladen) omschrijven.
 
als je werkt met het $-teken kun je de formule flexibel maken en doorcopieren.
 
Ja, klopt helemaal, maar ik kan me volgens mij herinneren dat er gewoon zoiets was als verborgen cellen meetellen/niet meetellen, ik kan dat alleen niet meer vinden
 
zonder VBA zal je dit niet in 1 keer lukken (daar kan ik je echter onvoldoende bij helpen).

met subtotaal en een eenmaal goed gemaakte formule, kun je deze toch eenvoudig doorcopieren (ook over de tabbladen heen).

dit lijkt me toch de eenvoudigste oplossing (of is het bereik over de tabbladen heen, niet hetzelfde)?
 
zonder VBA zal je dit niet in 1 keer lukken (daar kan ik je echter onvoldoende bij helpen).

met subtotaal en een eenmaal goed gemaakte formule, kun je deze toch eenvoudig doorcopieren (ook over de tabbladen heen).

dit lijkt me toch de eenvoudigste oplossing (of is het bereik over de tabbladen heen, niet hetzelfde)?

Als je het stukje code zo hebt, graag, ben wel zo bekend met VBA dat ik het dan werkend krijg. Klein probleempje is wel dat ik op m´n werk geen toegang heb tot het VBA gedeelte van het document, maar misschien krijg ik dat wel voor elkaar.

Bedankt in ieder geval
 
als je bekend bent met VBA, kun je de gegevens van een opgenomen macro aanpassen aan je overige kolommen.

toch?
 
Pas 15 nog aan aan het gewenste rijnummer
Code:
Sub Test()
    ' Cells(15,1) = FilteredCellsSum(ActiveSheet, 1) ' voor 1 kolom
    For i = 1 To ActiveSheet.UsedRange.Columns.Count ' voor alle kolommen
        Cells(15, i) = FilteredCellsSum(ActiveSheet, (i))
    Next
End Sub

Function FilteredCellsSum(ByVal Sh As Worksheet, colnr As Integer)
    'zichtbare rijen optellen
    Dim Target As Range
    If Sh.FilterMode = False Then
        FilteredCellsSum = 0
        Exit Function
    End If
    Set Target = Sh.AutoFilter.Range
    FilteredCellsSum = _
    WorksheetFunction.Sum(Target.Columns(colnr).SpecialCells(xlCellTypeVisible))
End Function
 
Of 1 van deze 2. Deze herberekenen automatisch bij wijziging filter.
Code:
Option Explicit

Function SumVisible(rR As Range) As Double
Dim rC As Range, dtotal As Double
    Application.Volatile
    For Each rC In rR
        If Not rC.EntireRow.Hidden And Not rC.EntireColumn.Hidden Then dtotal = dtotal + rC
    Next
    SumVisible = dtotal
End Function
  
Function Sum_Visible_Cells(Cells_To_Sum As Object)
Dim cell As Range, total As Double
    Application.Volatile
    For Each cell In Cells_To_Sum
        If cell.Rows.Hidden = False Then
            If cell.Columns.Hidden = False Then
                total = total + cell.Value
            End If
        End If
    Next
    Sum_Visible_Cells = total
End Function
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan