Vervolg op "Dashboard verbeteren"; deel-projectje bijna afgerond
1.Rijen en kolommen verbergen, in een niet beveiligd blad selecteer je enkele rijen of kolommen, klik je op de rechtermuis en kies je voor verbergen.
Handy2106 aan @Cow18: Sorrie, er stond 10% maar dat moest 100% zijn. Ik zou ook niet weten hoe ik "deels begrijpen" in een percentage uit zou moeten drukken (LOL)
2. Die ene macro, daar moet dus toch telkens die userinterfaceonly bij. Ik dacht dat je dat maar 1 keer moest doen, vergissing van mijn kant.
Handy2106 aan @Cow18: geen probleem
Code:
Sub Beveiligen()
Sheets("KPI").Protect Password:="Handy", userinterfaceonly:=True
Sheets("Dashboard").Protect Password:="Handy", userinterfaceonly:=True
End Sub
Handy2106 aan @Cow18: Ik heb ermee gestoeid door de code op te nemen in de "PlusMin button Macro". Het werkt nog niet vloeiend. Wat doe ik nog fout:
Code:
Sub PlusMinus_Button()
'MsgBox ActiveSheet.Shapes(Application.Caller).Name 'deze regel mag straks weg, maar zo weet je de naam van je Button
Sheets("KPI").Unprotect Password:="Handy" 'userinterfaceonly:=True, hier wil ik de beveiliging er eerst afhalen voor sheet KPI
Sheets("Dashboard").Unprotect Password:="Handy" ',userinterfaceonly:=True, hier wil ik de beveiliging er eerst afhalen voor sheet Dashboard
With Sheets("KPI") 'in dit werkblad cellen aanpassen
rij = Application.Match(CDbl(Date), .Range("B1:B600"), 0) 'zoek datum van vandaag in de B-kolom, de gerelateerd cel wordt aangepast
If IsNumeric(rij) Then 'gevonden=numeriek
Select Case ActiveSheet.Shapes(Application.Caller).Name 'hier gaat het mis: bij foutcontrole wijst hij deze regel aan. Ik snap nog niet hoe ik het moet oplossen
Case "Button 6": .Range("C" & rij).Value = .Range("C" & rij).Value + 1 'aantal calls Button
Case "Button 11": .Range("C" & rij).Value = .Range("C" & rij).Value - 1 'aantal calls Button
Case "Button 12": .Range("D" & rij).Value = .Range("D" & rij).Value + 1 'ftf succes Button
Case "Button 19": .Range("D" & rij).Value = .Range("D" & rij).Value - 1 'ftf succes Button
Case "Button 15": .Range("F" & rij).Value = .Range("F" & rij).Value + 1 'oam leads Button
Case "Button 23": .Range("F" & rij).Value = .Range("F" & rij).Value - 1 'oam leads Button
Case "Button 16": .Range("G" & rij).Value = .Range("G" & rij).Value + 1 'lending leads Button
Case "Button 25": .Range("G" & rij).Value = .Range("G" & rij).Value - 1 'lending leads Button
Case "Button 17": .Range("H" & rij).Value = .Range("H" & rij).Value + 1 'avb leads Button
Case "Button 27": .Range("H" & rij).Value = .Range("H" & rij).Value - 1 'avb leads Button
Case "Button 18": .Range("I" & rij).Value = .Range("I" & rij).Value + 1 'avb succes Button
Case "Button 28": .Range("I" & rij).Value = .Range("I" & rij).Value - 1 'avb succes Button
'nog tig Buttons
End Select
Sheets("Dashboard").Range("D1
6").Value = Application.Transpose(Array(.Range("C" & rij).Value, .Range("D" & rij).Value, .Range("F" & rij).Value, .Range("G" & rij).Value, .Range("H" & rij).Value, .Range("I" & rij).Value))
Else
MsgBox "Het is zondag dus vandaag werkt ook dit werkblad niet!", vbCritical
End If
End With
Sheets("KPI").Protect Password:="Handy" 'hier dient de beveiliging van sheet KPI weer aan te worden gezet
Sheets("Dashboard").Protect Password:="Handy" 'hier dient de beveiliging van sheet Dashboard weer aan te worden gezet
End Sub
Handy2106 aan @Cow18: Test het eens (wellicht zie jij direct wat ik fout doe...) en dan stopt de macro iedere keer bij het Select statement. Klik ik nogmaals op de button dan doet hij het wel (dat kan ik nu nog niet bevatten). Ik denk dat ik de af- en aan beveiliging statements iets anders moet declareren.
Hier heb ik hulp bij nodig.
3. Soms wil je zelf toch iets veranderen aan je werkmap en dan moet je de beveiliging van een werkblad opheffen ofwel met die andere macro ofwel handmatig, je klikt met de rechtermuis op de desbetreffende tab en dan beveiliging opheffen met ingave van het paswoord. dan kan je bv. vandaag (=een zondag) in die B-kolom toevoegen.
Handy2106 aan @Cow18: haha,
dat moest ik inderdaad doen om vandaag te kunnen testen
4. Dat spelen met die 2 macros, eigenlijk enkel om te kunnen switchen tss beide toestanden, in de ene situatie is het zoals vroeger, dat je alles kan,
de andere kan je enkel met de toetsen werken.
Handy2106 aan @Cow18: Dat snap ik helemaal en erg nuttig om er op die manier ervaring mee op te hebben gedaan
5. Normaal verwacht je niet dat een gewoon gebruiker VBA kent, dus ben je veilig met je wachtwoord, niemand kan het lezen. Dat is anders als je het bestand hier op de site neerzet. Binnen 5 tellen kennen ze het paswoord.
Handy2106 aan @Cow18: Klopt, ik ga werken met vrienden die geen kennis van VBA hebben voorlopig. Toch interessant om later uit te vogelen hoe dit beter te doen.
Je kan eigenlijk ook VBA beveiligen met een paswoord, maar dat wordt dan helemeaal te gek.
Handy2106 aan @Cow18: Voor latere zorg dus
6-7. je kan anders de werkbladen ook beveiligen zonder paswoord, misschien is dat in deze situatie nog het eenvoudigst.
Handy2106 aan @Cow18: Klopt. Ik heb nieuwsgierige gebruikers die toch gaan proberen iets kapot te maken. Hier wil ik ze tegen beschermen.
Ik voeg het bestand in de laatste versie weer bijgevoegd. (Ik ben erg blij met jouw ondersteuning en vraag me af hoe ik jou kan bedanken. Ik zou een kleine donatie aan dit platform willen doen
namens een ieder die mij tot zover heeft geholpen)