Doorgaan naar hoofdcontent

Posts

Posts uit juni, 2016 weergeven

Excel: lastige berekening gewogen percentage opgelost met matrix functies

Gewogen percentage Een ogenschijnlijk simpele vraag leidt tot het nodige denkwerk. Een collega kwam met het volgende simpele tabelletje: Categorie # Items # Incidenten a 1 1 b 1 1 c 5 1 d 1 1 e 1 1 f 1 3 g 1 1 h 1 1 i 3 1 j 1 1 De vraag was hoe het gewogen percentage te berekenen per categorie. Het heeft enige hoofdbrekens gekost maar uiteindelijk hebben we de oplossing. In dit geval weegt het aantal incidenten zwaarder naarmate er minder items zijn. Zijn er minder items zijn, dan geldt het omgekeerde. Dit betekent dat we het aantal incidenten moeten delen op het aantal items . Dit leidt in kolom D tot een simpele formule: =C2/B2 Deze formule kunnen we dan doortrekken naar beneden. Om nu tot een gewogen percentage te komen moeten we de uitkomst delen door de som van alle delingen: =SOM($C$2:$C$11/$B$2:$B$11) Voor de ju

VBA: script om internet explorer pagina's geautomatiseerd om te zetten in PDF's

De aanleiding voor dit script is de behoefte om geautomatiseerd een aantal rapporten van Reporting Services om te zetten naar PDF formaat. Het onderstaande VBA script is algemeen te gebruiken om een willekeurige internet pagina om te zetten naar PDF . Het kan aangeroepen worden vanuit elk Office pakket. Zelf heb ik het gemaakt in Access . Voor het omzetten van de internet pagina naar PDF heb ik gebruik gemaakt van de PDFCreator . Dit kan gratis worden gedownload:  http://www.pdfforge.org/ De PDFCreator kan als printer worden aangeroepen met VBA . Binnen dit programma kunnen we een aantal zaken instellen zoals de map waarin we de PDF's willen opslaan. Het VBA script: 'functie nodig om de standaard printer aan te passen Private Declare Function SetDefaultPrinter Lib "winspool.drv" Alias "SetDefaultPrinterA" (ByVal pszPrinter As String) As Long Sub printURL()     Dim objExplorer As Object     Dim lngQuery As Long 'geef waarde QueryStatusWB

Excel: VBA script om wachtwoord te verwijderen

Af en toe krijg ik een vraag om een wachtwoord van een Excel blad te halen. Doodsimpel met VBA. Hier een script dat ik gebruik: Sub WachtwoordCrack()     Dim a As Integer, b As Integer, c As Integer, d As Integer, _     e As Integer, f As Integer, g As Integer, h As Integer, _  I As Integer, j As Integer, k, m As Integer     Dim begin As Date, eind As Date     Dim duur As String     Dim objSheet As Worksheet     begin = TimeValue(Time)     On Error Resume Next     For Each objSheet In Application.Worksheets         For a = 65 To 66: For b = 65 To 66: For c = 65 To 66             For d = 65 To 66: For e = 65 To 66: For f = 65 To 66                 For g = 65 To 66: For h = 65 To 66: For I = 65 To 66                     For j = 65 To 66: For k = 65 To 66: For m = 32 To 126                         ActiveSheet.Unprotect Chr(a) & Chr(b) & _   Chr(c) & Chr(d) & Chr(e) & Chr(f) & _   Chr(g) & Chr(h) &  Chr(I) & Chr(j) & C