• 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.

tellen van vormen

Status
Niet open voor verdere reacties.

Biers

Gebruiker
Lid geworden
18 jan 2010
Berichten
21
Beste excel-specialisten,

Op een bepaald werkblad heb ik een aantal vormen staan (ca 50 st). Deze vormen heb ik een bepaalde naam gegeven bijv. Symbool2000. Met het volgende commando kan ik het totaal aantal vormen op het geactiveerde werkblad middels messagebox weergeven.

MsgBox ActiveSheet.Shapes.Count

Aan het totaal heb ik niks. Ik wil graag per vorm weten hoeveel er in een bepaald bereik op een werkblad staan. Het aantal moet in een bepaalde cel komen te staan.

Wie heeft hier een oplossing voor?
 
je zal in een loopje alle shapes van je werkblad moeten langslopen. Daarin vraag je de topleft-address op van die shape en als die in je gewenste gebied ligt, dan doe je een tellertje +1. Op het einde schrijf je het resultaat naar je msgbox
 
Beste cow18,

Heb je voor mij een voorbeeld code die ik in een macro kan plaatsen. Ben daar niet zo goed in. Alvast bedankt.
 
zoals hierboven beschreven
Code:
Option Explicit
Const MijnBereik As String = "B2:G20"                      'in dit bereik worden de shapes geteld

Sub TellenBinnenBereik()
  Dim i As Integer, sh As Shape
  For Each sh In ActiveSheet.Shapes
    If Not Intersect(Range(MijnBereik), sh.TopLeftCell) Is Nothing Then i = i + 1
  Next
  MsgBox "Er zijn " & i & " shapes binnen het bereik " & Range(MijnBereik).Address
End Sub
 
Beste cow18,

Dit werkt en zijn een stap dichterbij. Heb het bereik aangepast en alle vormen worden bij elkaar opgeteld. Wat ik nu wil is dat voor iedere verschillende vorm en dat zijn er zo'n 50 een totaaltelling wordt gemaakt. Dus bijvoorbeeld
vorm 1 : 20 st,
vorm 2 1 st,
vorm 3 0 st etc.
De namen van vormen die ik gebruikt heb zijn : Symbool2000 t/m Symbool2023 en Symbool2050 t/m Symbool2066. Daarnaast dient de waarde van de telling in een cel worden geplaatst.

Mijn dank is groot als je hier een oplossing voor hebt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan