› Sviluppare funzionalita su Microsoft Office con VBA › stampa da pulsante/macro non da barra degli strumenti
-
AutoreArticoli
-
Ciao a tutti.
Nel workbook allegato in thisworkbook c'è una macro per disabilitare la stampa da barra degli strumenti per determinati fogli.
Nel foglio utenti_errori c'è un pulsante giallo per stampare il foglio con una macro che è nel modulo1
La macro del modulo1 non funziona perchè è disabilitato la stampa.
Come correggere senza togliere da thisworkbook il nome del foglio utenti_errori ?
Grazie
Allegati:
You must be logged in to view attached files.Se il tuo obiettivo è rendere stampabile solo il Foglio "Utenti_Errori" mentre impedire la stampa a tutti gli altri, dovresti modificare la macro così:
Nel Modulo Standard:
Option Explicit Sub stampa_righe_attive() '09/07/22 Dim ws1 As Worksheet Set ws1 = ThisWorkbook.Sheets(1) Dim x As Long Dim avviso As Integer x = ws1.Cells(Rows.Count, 3).End(xlUp).Row ws1.PageSetup.PrintArea = "A2:R" & x '<<< range '====perché prima istanzi il Foglio "Utenti_Errori e poi lo distruggi qui????==== 'Set ws1 = Nothing '============================================================================ 'Modifica la routine così avviso = MsgBox("Stampare solo righe attive?....", vbInformation + vbYesNo + vbDefaultButton2, "AVVISO") If avviso = vbNo Then Exit Sub ws1.PageSetup.Zoom = False ws1.PageSetup.FitToPagesTall = False ws1.PageSetup.FitToPagesWide = 1 ThisWorkbook.PrintPreview 'Copies:=1, Collate:=True Set ws1 = Nothing '<----qui lo devi distruggere End SubMentre nell'evento Workbook_BeforePrint:
Option Explicit Private Sub Workbook_BeforePrint(Cancel As Boolean) If ActiveSheet.Name <> "Utenti_Errori" Then MsgBox "Questo foglio < " & ActiveSheet.Name & " > non è stampabile dalla barra" & Chr(13) & _ "degli strumenti usa il pulsante nel foglio!", vbCritical + vbOKOnly, "ERRORE!" Cancel = True End If End Subper favore dai riscontro e se risolvi spunta "Risolto". Grazie
Grazie alexps81, devo provarlo in ufficio.
-
AutoreArticoli
