Risultati da 1 a 7 di 7

Discussione: Selezionare schede in base a colore linguetta



  1. #1
    L'avatar di Maurizio76
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Sondrio
    Messaggi
    7
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    0

    Selezionare schede in base a colore linguetta

    Buongiorno.
    Che voi sappiate è possibile selezionare le schede di un file di excel in base al loro colore linguetta?
    Io ho un file con più di 200 schede: diverse schede che compongono il file hanno un colore linguetta uguale e vorrei stamparle con un unico comando, ma prima dovrei selezionarle e farlo una ad una sarebbe un pò lungo...
    Grazie a chi saprà darmi lumi.
    Maurizio

  2. #2

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7161
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2065
    Likes dati
    1301
    Ciao,
    cosa intendi per schede? I fogli?
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  3. #3
    L'avatar di Maurizio76
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Sondrio
    Messaggi
    7
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    0
    Si...

  4. #4
    L'avatar di Textomb
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    47
    Messaggi
    171
    Versione Office
    Excel 2016
    Likes ricevuti
    93
    Likes dati
    11
    certo che si può fare.
    Quanti colori diversi dele linguette devi gestire?

  5. #5
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160
    Buona sera a Tutti;
    senza volermi sovrapporre agli altri Interventi:

    @ Maurizio76;
    Buona sera, Maurizio, potresti provare con il seguente Codice che prevede solo la stampa dei Fogli di lavoro con il "colore linguetta" impostato a "Rosso"
    Codice: 
    Sub Stampa()
    Dim x As Integer
            For x = 1 To Sheets.Count
                If Sheets(x).Tab.Color = 255 Then Sheets(x).PrintPreview
            Next x
    End Sub
    Una volta testato il Codice, il Comando ".PrintPreview" potrà essere sostituito con ".PrintArea".

    Ovviamente è possibile definire il colore linguetta in funzione delle necessità contingenti, con ImputBox oppure con un Menu a tendina che proponga la scelta tra tutti i Colori da considerare.

    P.s. Maurizio, considera che il codice l'ho scritto con il sottofondo di una Tua Composizione.


    A disposizione.

    Buona serata.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  6. #6
    L'avatar di Maurizio76
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Sondrio
    Messaggi
    7
    Versione Office
    2010
    Likes ricevuti
    0
    Likes dati
    0
    Devo gestire 8 colori ... bisogna per forza passare da VBA per gestire questo tipo di selezione e/o stampa?

  7. #7
    L'avatar di Textomb
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Catania
    Età
    47
    Messaggi
    171
    Versione Office
    Excel 2016
    Likes ricevuti
    93
    Likes dati
    11
    Allego un file di esempio per gestire la stampa di fogli che possiedono lo stesso colore della linguetta fino ad un massimo di 8 colori diversi.
    All'inizio vengono caricati tutti i colori e messi in una userform. Quindi una volta selezionato il colore, viene generato in anteprima di stampa un file PDF che contiene tutti i fogli caratterizzati dal colore scelto.
    Fai sapere se funziona perchè non ho avuto modo di testarlo per bene...

    Di seguito il codice utilizzato all'interno della UserForm

    Codice: 
    Private Sub UserForm_Activate()
        Dim Coll As New Collection
        Dim Sh As Worksheet
        Dim x As Byte
        
        For Each Sh In Worksheets
            On Error Resume Next
                If Not Sh.Index = ActiveSheet.Index Then Coll.Add Item:=Sh.Tab.Color, Key:=CStr(Sh.Tab.Color)
            On Error GoTo 0
        Next
        
        Select Case Coll.Count
            Case Is < 8
                For x = Coll.Count + 1 To 8
                    UserForm1.Controls.Item("optionButton" & x).Visible = False
                Next
            Case Is > 8
                MsgBox "I colori da gestire non possono essere superiori a 8"
                Unload Me
                Exit Sub
        End Select
        
        For x = 1 To Coll.Count
            UserForm1.Controls.Item("optionButton" & x).BackColor = Coll(x)
        Next
            
        Me.OptionButton1 = True
        
    End Sub
    Codice: 
    Function MxSh(c As Long)
        Dim Sh As Worksheet
        Dim Mx() As String
        Dim x As Integer
        Dim Coll As New Collection
        For Each Sh In Worksheets
            If Not Sh.Index = ActiveSheet.Index And Sh.Tab.Color = c Then
                Coll.Add Sh.Name
            End If
        Next
        
        ReDim Mx(1 To Coll.Count)
        For x = 1 To Coll.Count
            Mx(x) = Coll(x)
        Next
        
        MxSh = Mx
    End Function
    Codice: 
    Private Sub CommandButton1_Click()
        Dim Opt As Control
        Dim My_Clr As Long
        For Each Opt In UserForm1.Controls
            If TypeName(Opt) = "OptionButton" Then
                If Opt.Value = True Then
                    My_Clr = Me.Controls.Item(Opt.Name).BackColor
                    Worksheets(MxSh(My_Clr)).Select
                    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, openafterpublish:=True
                    Unload Me
                    Worksheets("Pannel").Select
                    Range("A1").Select
                    Exit Sub
                End If
            End If
        Next
    End Sub

  8. I seguenti 5 utenti hanno dato un "Like" a Textomb per questo post:


Discussioni Simili

  1. Risposte: 4
    Ultimo Messaggio: 30/01/17, 16:31
  2. macro schede di produzione self service
    Di manu21 nel forum Domande su Excel VBA e MACRO
    Risposte: 0
    Ultimo Messaggio: 28/09/16, 22:03
  3. Somma celle sulla base del colore sfondo
    Di tyran nel forum Domande su Excel in generale
    Risposte: 25
    Ultimo Messaggio: 18/10/15, 19:19
  4. Colorare una cella in base al colore di un'altra cella
    Di Vintex nel forum Domande su Excel VBA e MACRO
    Risposte: 7
    Ultimo Messaggio: 08/10/15, 15:21
  5. Schede
    Di cesare nel forum Domande su Excel VBA e MACRO
    Risposte: 8
    Ultimo Messaggio: 30/09/15, 01:29

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •