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

CommandButton

Status
Niet open voor verdere reacties.

appie36

Gebruiker
Lid geworden
19 mei 2009
Berichten
196
Hallo,

Ik heb een tabel met gegevens, met een CommandButton maak ik daar een PDF van. Zover gaat het goed,
Ik dacht ik maak een dashboard met alles bij elkaar en de CommandButton ook daar bij om snel de PDF te kunnen afdrukken

Helaas werkt dit niet, moet de CommandButton altijd op het zelfde blad staan dan waar de opdracht moet worden uitgevoerd of kan dat ook anders.

Mvg,
Ab
 
Dag Ap,
Graag een bestandj bjvoegen, glazebol is wazig.

groetjes Ben
 
Ik ben er al uit, zie code.
De knop staat op Sheet(Dashboard), daar zit deze code onder.
Het scherm knippert wel even maar het werkt.


HTML:
Private Sub CommandButton1_Click()
Sheets("Planning").Select
ActiveSheet.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    FileName:=Range("D6") & " Meststoffen Planning", _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=False, _
    IgnorePrintAreas:=False, _
    From:=1, _
    To:=5, _
    OpenAfterPublish:=True
    
Sheets("Dashboard").Select


End Sub
 
Dit is voldoende:
Code:
Private Sub CommandButton1_Click()
    With Sheets("Planning")
        .ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=.Range("D6") & " Meststoffen Planning", _
        OpenAfterPublish:=True
    End With
End Sub
 
Inderdaad, stuk korter en doet het zelfde, bedankt.

Als je twee maal op de knop klikt dan krijg je foutmelding, op zich geen probleem. Als het goed is klikt men er ook maar 1x op, maar is zo iets nog te ondervangen met een msgbox of wat anders?

Mvg,
Ab
 
Als je zegt een foutmelding te krijgen is het wel zo handig deze er ook bij te vertellen.
 
Ja dat is inderdaad niet zo handig zonder voorbeeld, zie foto

Je kan hem wel beindigen gelukkig, de boel loopt niet vast
 

Bijlagen

  • foutmelding.JPG
    foutmelding.JPG
    22 KB · Weergaven: 23
Laatst bewerkt:
Dat staat los van de code.
Hij probeert een document met dezelfde naam op te slaan en dat is kennelijk niet toegestaan in de map waar dat wordt gedaan.
Is het belangrijk dat PDF document op te slaan of wil je hem alleen openen?
 
Zo:
Code:
Sub CommandButton1_Click()
    On Error GoTo errhandler
    With Sheets("Planning")
        .ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=.Range("D6") & " Meststoffen Planning", _
        OpenAfterPublish:=True
    End With
    Exit Sub
errhandler:
    MsgBox "Bestand kon niet worden opgeslagen, mogelijk is het document nog geopend."
End Sub
 
Kan natuurlijk.
Maar daarmee wijzig je alleen de foutmelding in plaats van de fout te verhelpen.
 
Ik denk dat je AHulpje bedoelt ;)
 
Maar van edmoor moet het eigenlijk zo, en dat is inderdaad beter:
Code:
Sub CommandButton1_Click()    With Sheets("Planning")
    If IsFileOpen(Range("D6") & " Meststoffen Planning.pdf") Then
        MsgBox "Bestand kon niet worden opgeslagen, het document is nog geopend.", vbCritical, "Foutmelding"
    Else
        .ExportAsFixedFormat _
        Type:=xlTypePDF, _
        fileName:=.Range("D6") & " Meststoffen Planning.pdf", _
        OpenAfterPublish:=True
    End If
    End With
End Sub


Function IsFileOpen(fileName As String)
    Dim fileNum As Integer
    Dim errNum As Integer
    Dim errDescription As String
    
    If Len(Dir(fileName)) > 0 Then
        On Error Resume Next
        fileNum = FreeFile()
        
        Open fileName For Input Lock Read As #fileNum
        errNum = Err
        errDescription = Err.Description
        Close fileNum
        On Error GoTo 0
        
        Select Case errNum
            Case 0
                IsFileOpen = False
            
            Case 70
                IsFileOpen = True
        
            Case Else
                MsgBox errDescription, vbCritical, "Foutmelding"
        End Select
    End If
End Function
 
Je kan Acrobat ook zo sluiten.

Code:
Sub CommandButton1_Click()
 Shell "taskkill  /IM Acrobat.exe"
 Application.Wait DateAdd("s", 2, Now) 'even de tijd gunnen om Acrobat te sluiten
    With Sheets("Planning")
        .ExportAsFixedFormat Type:=xlTypePDF, Filename:=.Range("D6") & " Meststoffen Planning", OpenAfterPublish:=True
    End With
end sub
 
Allemaal bedankt voor het meedenken, opties te over zo te zien.

ik zal het draadje afsluiten
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan