Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Sintonizzare barra Gannt con testo sovrascritto

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Sintonizzare barra Gannt con testo sovrascritto

Postdi Ricky0185 » 11/12/19 00:02

Buonasera, nel file allegato ho utilizzato un Gannt per avere immediata visibilità di alcuni dati. Nelle stecche dei vari periodi dovrei inserire/sovrascrivere dei dati: lettere e numeri e chiedo se sia possibile, all'avanzare del periodo, sincronizzare anche l'avanzamento di quanto scritto sulla stecca. Manipolando i dati del Controllo si può estendere o ridurre il periodo da esaminare, al momento è di 5 anni anche se ho eliminato righe e colonne per allegerire il file.
Quesito inserito anche su altro forum, però senza riscontro.
Ringrazio per l'eventuale aiuto e porgo
Cordiali saluti
Riccardo
Ricky0185
Utente Junior
 
Post: 10
Iscritto il: 10/12/19 20:38

Sponsor
 

Re: Sintonizzare barra Gannt con testo sovrascritto

Postdi Anthony47 » 11/12/19 10:25

Che cosa e' "la stecca"??

Puoi descrivere la cosa da fare con un esempio, magari corredato da una simulazione fatta a mano?

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 16672
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Sintonizzare barra Gannt con testo sovrascritto

Postdi Ricky0185 » 11/12/19 15:06

La stecca è il periodo riportato in giorni sulla destra ed evidenziata con colore grigio (ricavato con formattazione condizionale). In sostanza agendo sul controllo in alto con le freccette ci si sposta nel tempo in avanti o indietro e conseguentemente si spostano le "stecche" vincolate al rispettivo periodo (colonne C e D) , ma non la scritta che ho posto su una di esse.
Agisci sulle freccette del controllo e ti rendi conto del problema.
Ciao e grazie
Ricky0185
Utente Junior
 
Post: 10
Iscritto il: 10/12/19 20:38

Re: Sintonizzare barra Gannt con testo sovrascritto

Postdi wallace&gromit » 11/12/19 22:54

La scritta attualmente è in BX7 e non ha motivo di spostarsi da lì perché non è legata alle modifiche che fai sulla cella di riferimento J2, dovresti avere la scritta in un altra parte della tabella e associarla ad una data, poi si sposterebbe con le date, ma non potresti ottenere il risultato attuale, perché dovresti inserire una formula in tutte le celle, e solo in una apparirebbe la scritta, mentre in quella alla sua destra no, quindi vedresti una mezza A di ABRACADABRA, a meno di magie... O di macro
Avatar utente
wallace&gromit
Utente Senior
 
Post: 1958
Iscritto il: 16/01/12 14:21

Re: Sintonizzare barra Gannt con testo sovrascritto

Postdi Anthony47 » 12/12/19 11:58

Si puo' fare solo con macro
Si potrebbe anche far spostare la scritta senza formule nelle celle, ma poi quando la data di appartenenza scomparisse da riga 4 (perche' si va a vedere una data futura) allora la scritta scomparirebbe e ci vorrebbe uno stregone per farla ricomparire all'occorrenza)
Potresti usare la barra di scorrimento per "nascondere" le colonne prima della data che vuoi memorizzare ma se usi XL2003 (come il formato ".xls" farebbe pensare) non riusciresti a rappresentare nemmeno 1 anno

Insomma la scritta andrebbe gestita come dice w&g, tipo: in colonna G il testo, in colonna H la data di posizionamento
Poi una macro si occuperebbe di posizionare la scritta nella colonna giusta o appena viene scritta la data di colonna H o quando il cursore sposta le date da visualizzare

Ad uso dimostrativo, il file che ragiona in questo modo e' scaricabile qui: https://www.dropbox.com/s/pwzxysa404oc5 ... 1.xls?dl=0

I Commenti vanno posizionati in colonna G e in colonna H va inserita la data a cui il commento si rifersice; va messo prima il Commento e poi la data.
La prima gestione di queste informazioni e' fatta dalla macro di WorksheetChange:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myC As Range, dCol As String, gCOL As Long
'
dCol = "H"          '<<< La colonna con la data (del Commento)
'
gCOL = Cells(3, dCol).End(xlToRight).Column
Application.EnableEvents = False
For Each myC In Target
    If myC.Column = Cells(1, dCol).Column And myC.Row > 4 Then
        If myC <> "" And myC.Offset(0, -1) = "" Then
            beep
            myC.ClearContents
        ElseIf IsDate(myC.Value) Then
            myMatch = Application.Match(CLng(myC.Value), Range("A3").Resize(1, 250), False)
            Cells(myC.Row, gCOL).Resize(1, Columns.Count - gCOL - 1).ClearContents
            If Not IsError(myMatch) Then
                Cells(myC.Row, myMatch).Value = Target.Offset(0, -1).Value
            End If
        Else
            myC.ClearContents:
            Cells(myC.Row, gCOL).Resize(1, Columns.Count - gCOL - 1).ClearContents
            beep
        End If
    End If
Next myC
Application.EnableEvents = True
End Sub

Poi ho associato alla BarraDiScorrimento la macro ReposData inserita in Modulo1:
Codice: Seleziona tutto
Sub ReposDate()
Dim myMatch, I As Long, dCol As String, gCOL As Long
'
dCol = "H"      '<<< La colonna con la data (del Commento)
'
gCOL = Cells(3, dCol).End(xlToRight).Column
Application.EnableEvents = False
For I = 5 To Cells(Rows.Count, dCol).End(xlUp).Row
        If IsDate(Cells(I, dCol).Value) Then
            myMatch = Application.Match(CLng(Cells(I, dCol).Value), Range("A3").Resize(1, 250), False)
            Cells(I, gCOL).Resize(1, Columns.Count - gCOL - 1).ClearContents
            If Not IsError(myMatch) Then
                Cells(I, myMatch).Value = Cells(I, dCol).Offset(0, -1).Value
            End If
        Else
'            Cells(I, dCol).ClearContents:
            Cells(I, gCOL).Resize(1, Columns.Count - gCOL - 1).ClearContents
            beep
        End If
Next I
Application.EnableEvents = True
End Sub

In questo modo quando aziono la scrollbar la ReposDate va a riposizionare i commenti nelle colonne dovute

So che le colonne G e H nel tuo progetto sono usate per altri scopi, per questo la macro consente di dichiarare quale e' la colonna con le date dei commenti (vedi le istruzioni marcate <<< su ambedue le macro), mentre calcola la colonna dove comincia il "gantt" come la prima colonna in riga 3, a destra della colonna contenente la data dei commenti, che risulta compilato.
I Commenti vanno alla sinistra della colonna date.

Quanto proposto gestisce un unico Commento con relativa data; con un po' di lavoro in piu' si puo' passare a una situazione Multicommento /Multidata.

Insomma vedi se puoi adattare al tuo scopo

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 16672
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Sintonizzare barra Gannt con testo sovrascritto

Postdi Ricky0185 » 12/12/19 19:23

Si uso il 2003 ed ho inserito (copiato, ma secoli fà) quella barra di scorrimento proprio per la scarsità di colonne che offre il 2003.
Ho inserito le tue macro nel file e purtroppo la Sub ReposDate() non funziona, ovvero inserendo la data dopo il commento lo registra regolarmente, ma poi cliccando sulle freccette od anche muovendo il cursore della barra, non succede nulla. Forse per via del 2003. In proposito potresti allegare il tuo file che hai preparato con filedropper?
Io sto provando per altra strada, basandomi sulla data d'inizio in B2 (o M3 con cursore a zero), sulla data della scritta ABRA.... stessa colonna ma riga 3 e sul valore che compare nella cella di collegamento della barra L2 che sposta di 1 o 4 settimane le celle della riga 4.
Ciao e grazie del tuo interessamento e di quello di W&G
Ricky0185
Utente Junior
 
Post: 10
Iscritto il: 10/12/19 20:38

Re: Sintonizzare barra Gannt con testo sovrascritto

Postdi Anthony47 » 13/12/19 00:51

La Sub ReposDate va assegnata alla barra di scorrimento (tasto dx; scegli Assegna macro); in questo modo partira' tutte le volte che cambi le intestazioni delle date

Non so perche' filedropper ti sembra meglio di dropbox, comunque eccolo:
http://www.filedropper.com/byricky0211controllob91211

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 16672
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Sintonizzare barra Gannt con testo sovrascritto":


Chi c’è in linea

Visitano il forum: Nessuno e 18 ospiti