Shapes veranderen na het verwijderen van een filter

Status
Niet open voor verdere reacties.

RickBu

Gebruiker
Lid geworden
21 aug 2018
Berichten
13
Beste Helpers,

In mijn planningsprogramma (wat ik mede dankzij jullie heb kunnen schrijven) ontstaat er een bijzondere situatie wanneer ik regels toevoeg of wijzig met een gefilterde kolom. Hoewel ik de oorzaak van het probleem vast heb kunnen stellen heb ik geen idee hoe ik het op zou kunnen lossen. Het ziet er als volgt uit: middels een formulier kan ik orderdata invoeren die vervolgens vertaald wordt naar shapes op een datumlijn op de onderste rij van de tabel. Aan deze rij wordt links nog een extra shape (Grijze Rechthoek) toegevoegd die ervoor zorgt dat de informatie van de toegevoegde order weer inzichtelijk gemaakt kan worden en eventueel aangepast kan worden.

Het probleem waar ik tegenaan loop ontstaat wanneer ik data filter en vervolgens een order invoer of aanpas. In filtermodus worden de vormen gewoon ingevoerd of aangepast zoals dat wenselijk is, binnen het regelniveau van de order. Wanneer ik vervolgens mijn filter uitschakel zodat alle orders weer zichtbaar worden, rekken de ingevoerde en aangepaste shapes uit. Hier twee afbeeldingen ter illustratie:
Helpmij1.JPG
Hier heb ik in gefilterde modus aanpassingen gedaan.

Helpmij2.JPG
Dit is het resultaat wanneer ik mijn filters vervolgens weer wis.

Ik ben me er van bewust dat dit te maken heeft met feit dat shapes los boven de cellen zweven en dat ik op het moment van wijzigen of invoeren de shapes.Top toewijs op de positie van de gefilterde regel. Ik kan me alleen geen oplossing bedenken om dit te omzeilen of te corrigeren. Ik wil namelijk dat de collectie shapes zich verplaatst naar de bijhorende rij tussen alle overige data met bijhorende hoogte. Ik heb het volgende al geprobeerd:

- Het aanpassen van alle shape eigenschappen naar Move with cells in plaats van Move and size with cells dit verhelpt het probleem van het het uitrekken maar levert vervolgens weer problemen met filteren en shapes die niet op de juiste plaats belanden.
- Het vaststellen van de hoogte op 14.7 (de gewenste hoogte ivm mijn celhoogte). Ik kwam er alleen al snel achter dat de hoogte ook vanaf het shapes.Top niveau berekend wordt en dat deze hoogte zich weer aanpast zodra de filter wordt uitgeschakeld.

Ik hoop dat ik heb probleem helder uit heb kunnen leggen, het bestand is bijgevoegd. Het is noodzakelijk aanpassingen en toevoegingen te kunnen doen in gefilterde staat omdat het aantal regels in dit bestand flink zal stijgen. Bedankt alvast!

Groeten,
Rick
Bekijk bijlage Voorbeeld helpmij Forum.xlsm
 
Dataopslag in werkblad; fancy opmaak in Userform.
 
snb, bedankt voor je reactie! Zou je dat antwoord misschien wat meer toe kunnen lichten? Wil je ermee zeggen dat ik de shapes naar het userform zou moeten verplaatsen?
 
Vermijd samengevoegde cellen.

Gebruik slechts 1 userform

Vermijd het volplempen van een werkblad met afbeeldingen. Cellen kunnen gewoon met hun achtergrondeigenschap gekleurd worden.

Dit is een misvatting:
Het is noodzakelijk aanpassingen en toevoegingen te kunnen doen in gefilterde staat omdat het aantal regels in dit bestand flink zal stijgen.
Er is geen verband tussen de omvang van een bestand en filtering.
 
Daar heb je inderdaad wel een punt, ik heb er nu helaas wel te veel tijd in zitten om nog over te stappen op het concept van de cellen met achtergrondeigenschappen. Bij een volgende project zal ik daar zeker voor kiezen.

Het is noodzakelijk aanpassingen en toevoegingen te kunnen doen in gefilterde staat omdat het aantal regels in dit bestand flink zal stijgen.
Ik denk dat ik dit niet helemaal duidelijk heb uitgelegd. Ik wilde hiermee benadrukken dat de oplossing om alleen nog maar aanpassingen te doen aan regels als alle filters uitgeschakeld zijn op de langere termijn geen optie is. De filterfunctie is namelijk nodig om snel de gewenste regel boven water te halen.

Inmiddels heb ik een oplossing voor mijn probleem met de Shapes gevonden, het uitrekken kan voorkomen worden door het Shapes.Top niveau onder het regelniveau te houden.
Code:
 Dim LeverDatum As Shape
Set LeverDatum = PlanningSheet.Shapes.AddShape(msoShapeRectangle, Left:=Cel.Left, Top:=Cel.Top + (Cel.Height - 13.5) / 2, Width:=Cel.Width, Height:=14.5)

Met dit stukje code kan ik er voor zorgen dat de Shape gecentreerd wordt binnen de regel en dus niet tegen de bovenkant van de regel aan zit. Na wat gestoei met de afmetingen is dit het geworden.
 
Haha nee daar ben ik mij volledig van bewust. Op deze manier kan ik in ieder geval melden dat mijn vraag met dat stukje code is opgelost. Bedankt voor je interesse in mijn vraag.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan