Beste medeforum gebruikers,
Ik ben bezig met het optimaliseren van een tijdkaarten systeem voor diverse leidinggevenden.
Elke leidinggevenden heeft een 'x' aantal medewerkers onder zich, waarvoor per medewerker een sheet (tijdkaart) wordt toegevoegd.
Alle informatie haal ik uit een database bestand, zoals o.a. welke leidinggevende bij de medewerker hoort, hoeveel contracturen deze heeft en wat het personeelsnr is.
Hierdoor is het bestand multifunctioneel voor alle leidinggevenden.
Nu is het belangrijk dat, als medewerker 'x' geslecteerd wordt de juiste handtekening van de leidinggevende geladen/ingevoegd/zichtbaar wordt.
Daar gaat bij deze dus mijn vraag over: wat is de beste manier om via VBA de afbeelding(en) weer te geven.
Het bestand moet namelijk zo klein mogelijk blijven, en niet per sheet (per medewerker dus) 10 handtekening inladen.
Ik heb de VBA code niet bij de hand, deze heb ik gemaakt op mijn werk maar ik kan daar niet uitgebreid internetten...
Mijn huidige werkwijze (welke dus WEL werkt maar mijn inziens inefficient is):
In de sub Worksheet_change een Case...
Deze Case kijkt naar de: - Range("A8").Value - (leidinggevende) van het betreffende sheet, en als deze is veranderd wordt de huidige handtekening verwijdert, en de nieuwe geladen (Pictures.Insert).
Dit werkt in principe prima, want per sheet is er altijd maar 1 plaatje aanwezig wat het bestand relatief klein houd.
Het nadeel is alleen dat bij elke wijziging van de sheet (zoals dat hoor bij worksheet_change), de VBA Code gaat kijken naar het juiste plaatje, en deze al dan niet verwijdert/toevoegd.
Dit werkt langzamer/opvallender dan ik graag zou willen.
Is het ook mogelijk bij het openen van het bestand (liefst het database bestand), alle handtekeningen 1x te laden en vervolgens te linken naar de juiste plek in de betreffende sheets(tijdkaarten).
Deze hoeven dan alleen .Visible te worden wanneer de naam van de leidinggevende overeen komt!
Ik hoor graag wat de mogelijkheden zijn (misschien een function?).
Alvast bedankt...
Gr,
dprod
Ik ben bezig met het optimaliseren van een tijdkaarten systeem voor diverse leidinggevenden.
Elke leidinggevenden heeft een 'x' aantal medewerkers onder zich, waarvoor per medewerker een sheet (tijdkaart) wordt toegevoegd.
Alle informatie haal ik uit een database bestand, zoals o.a. welke leidinggevende bij de medewerker hoort, hoeveel contracturen deze heeft en wat het personeelsnr is.
Hierdoor is het bestand multifunctioneel voor alle leidinggevenden.
Nu is het belangrijk dat, als medewerker 'x' geslecteerd wordt de juiste handtekening van de leidinggevende geladen/ingevoegd/zichtbaar wordt.
Daar gaat bij deze dus mijn vraag over: wat is de beste manier om via VBA de afbeelding(en) weer te geven.
Het bestand moet namelijk zo klein mogelijk blijven, en niet per sheet (per medewerker dus) 10 handtekening inladen.
Ik heb de VBA code niet bij de hand, deze heb ik gemaakt op mijn werk maar ik kan daar niet uitgebreid internetten...
Mijn huidige werkwijze (welke dus WEL werkt maar mijn inziens inefficient is):
In de sub Worksheet_change een Case...
Deze Case kijkt naar de: - Range("A8").Value - (leidinggevende) van het betreffende sheet, en als deze is veranderd wordt de huidige handtekening verwijdert, en de nieuwe geladen (Pictures.Insert).
Dit werkt in principe prima, want per sheet is er altijd maar 1 plaatje aanwezig wat het bestand relatief klein houd.
Het nadeel is alleen dat bij elke wijziging van de sheet (zoals dat hoor bij worksheet_change), de VBA Code gaat kijken naar het juiste plaatje, en deze al dan niet verwijdert/toevoegd.
Dit werkt langzamer/opvallender dan ik graag zou willen.
Is het ook mogelijk bij het openen van het bestand (liefst het database bestand), alle handtekeningen 1x te laden en vervolgens te linken naar de juiste plek in de betreffende sheets(tijdkaarten).
Deze hoeven dan alleen .Visible te worden wanneer de naam van de leidinggevende overeen komt!
Ik hoor graag wat de mogelijkheden zijn (misschien een function?).
Alvast bedankt...
Gr,
dprod