Il problema dei 3 corpi: Attraverso continenti e decadi, cinque amici geniali fanno scoperte sconvolgenti mentre le leggi della scienza si sgretolano ed emerge una minaccia esistenziale. Vieni a parlarne su TopManga.
 
Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Date in un GRAFICO_Formato asse AUTOMATICO

Ultimo Aggiornamento: 03/07/2018 11:19
Post: 40
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
21/05/2018 15:17

Ragazzi buonasera a tutti!!
Con l'aiuto di voi sul forum sono riuscito a creare alcune schede per la gestione dei progetti.
Avrei però ancora un problema da risolvere riguardo l'asse orizzontale del grafico. Al momento vengono rappresentate sul grafico le date in E13:E30 ma la data di inizio sono costretto a metterla manualmente (es.marzo 2017) mentre la data di fine viene dimensionata con l'ultima data presente in E13:E30.
Il problema dipende dal fatto che alcune celle Data rimangono vuote e pertanto Excel assegna a tali celle la data del 0/01/1900: il grafico viene così dimensionato in "automatico" a partire dal 1900!!

Esiste quindi un modo per dimensionare automaticamente il grafico soltanto con le date inserite (data min-data max) ignorando le celle vuote?

Spero proprio che qualcuno riesca ad aiutarmi!

Grazie a tutti!!

Post: 568
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
OFFLINE
21/05/2018 17:04

Ciao
Innanzi tutto complimenti per l'ottimo lavoro.
Per adattare automaticamente l'asse delle ascisse usa questa macro (che puoi associare ad un evento del foglio)

Sub FormattaAsseX()
    Dim mn As Double, mx As Double
    mn = Application.WorksheetFunction.Min(Range("E13:E30"))
    mx = Application.WorksheetFunction.Max(Range("E13:E30"))
    ActiveSheet.ChartObjects("Grafico 2").Activate
    With ActiveChart.Axes(xlValue)
        .MinimumScale = mn
        .MaximumScale = mx
    End With
End Sub


Fai sapere. Ciao,
Mario
Post: 40
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
22/05/2018 10:29

Ciao Marius e grazie tante per la macro!!
Come faccio ad assegnarla ad un evento del foglio?
Ho provato ad inserirla in un nuovo modulo ma non funziona...

Grazie!
A.
Post: 3.751
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
22/05/2018 10:44

A quale evento del foglio vuoi assegnare il codice di Mario?

Le procedure "evento" non vanno inserite in un modulo standard ma nel modulo del foglio interessato.
[Modificato da alfrimpa 22/05/2018 10:45]

Alfredo
Post: 41
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
22/05/2018 10:48

Ciao alfrimpa,
non lo so...cercavo ci capire l'indicazione di Marius
"Per adattare automaticamente l'asse delle ascisse usa questa macro (che puoi associare ad un evento del foglio)"

Ora provo ad inserire la macro nel modulo del foglio interessato!

Grazie!
Post: 569
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
OFFLINE
22/05/2018 10:49

Ciao
Fai così:
Alt+F11 (apri l'Editor di Visual Basic),
doppio click sul nome del foglio che vedi nella parte sinistra,
copia/incolla la macro modificata come appresso
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("E13:E30")) Is Nothing Then
    Dim mn As Double, mx As Double
    mn = Application.WorksheetFunction.Min(Range("E13:E30"))
    mx = Application.WorksheetFunction.Max(Range("E13:E30"))
    ActiveSheet.ChartObjects("Grafico 2").Activate
    With ActiveChart.Axes(xlValue)
        .MinimumScale = mn
        .MaximumScale = mx
    End With
End If
End Sub


Ogi volta che una data viene modificata l'asse delle ascisse viene adattato.

Fai sapere. Ciao,
Mario
Post: 42
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
22/05/2018 11:41

Funziona alla grande!
Grazieeeee!
Qui sul forum siete fantastici!
Post: 43
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
22/05/2018 11:49

Ragazziii soltanto una cosa,
quando vado a svuotare la tabella B13:F30 cancellando il contenuto delle celle (ad eccezione della colonna D13:D30 che serve per graficare le etichette) mi rimane una fila di etichette con data gennaio 1900...come faccio a eliminare questa impostazione e visualizzare la tabella completamente vuota?

Grazie ancora!
A.
Post: 570
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
OFFLINE
22/05/2018 11:50

Grazie a te per riscontro.
Ciao e ... alla prossima,
Mario
Post: 44
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
22/05/2018 12:07

Ciao Marius!
sapresti rispondermi anche all'ultima domanda?
(che evidentemente non hai visto in quanto l'ho scritta subito dopo i ringraziamenti!)
[SM=x423038]
Post: 571
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
OFFLINE
22/05/2018 12:37

Ciao
Metti un altro pulsante di comando e assegna questo codice
Private Sub CommandButton2_Click()
  Range("B13:B30,E13:F30").ClearContents
End Sub


Provato. A me non rimane nulla nel Grafico. Restano, però, le diciture delle Convalida dati. Non mancherà a te aggiustarle.

Ciao,
Mario
Post: 45
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
22/05/2018 13:32

Ma in questo modo andrei solamente a cancellare i campi in colonna B ed E...in realtà dovrei cercare di togliere la fila di etichette rosse che resta nel grafico quando i campi sono vuoti e scompare appena viene immessa una data.
Allego screen.

Grazie ancora Marius!
Post: 572
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
OFFLINE
22/05/2018 16:02

Ciao
Ti allego il file nel quale ho inserito un pulsante ("Cancella dati").
Cliccaci sopra e vedrai che nel Grafico non appare nulla.

Ciao,
Mario
Post: 46
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
22/05/2018 16:41

Marius,
avevo già provato ad inserire il pulsante per eliminare i campi contenuti nell'istruzione della macro...i campi vengono cancellati ma la colonna di etichette rosse nel grafico rimane sempre!
Questa dipende dalla serie di "1" inseriti in D13:D130 che determina la lunghezza dell'etichetta...non so perché prima di inserire la macro di stamattina non avevo questo problema ed ora si!
[SM=x423023]
Post: 574
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
OFFLINE
22/05/2018 20:26

Ciao
Hai provato il file che ti ho allegato?
A me non fa quell'effetto che dici. Il Grafico è vuoto.

Ciao,
Mario
[Modificato da Marius44 22/05/2018 20:27]
Post: 51
Registrato il: 26/02/2018
Città: ROMA
Età: 32
Utente Junior
Excel 2010
OFFLINE
03/07/2018 11:19

Ragazzi eccomi di nuovo a richiedere un piccolo aiuto!

Ho aggiunto una colonna (E13:E30) al precedente file Excel per mostrare il numero di giorni compreso tra la data di OGGI (riportata in cella Q32) e le date che verranno inserite man mano che la scheda verrà compilata (E13:E30).
Ho applicato la formula =SE.NON.DISP.($Q$32-D13;"") a tutto il range ma per i campi in cui la data non è inserita imposta un valore numerico di default.

Come faccio a lasciare i campi in E13:E30 sempre vuoti e far si che la formula sopra venga attivata soltanto quando viene inserita una data in D13:D30?

In allegato il file Excel.

Grazie come sempre a tutti per l'aiuto!! [SM=x423028]
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Aggiornare le date dei turni in automatico (11 messaggi, agg.: 02/02/2021 09:09)
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 17:06. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com