Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Genera e nomina Fogli come contenuto cella

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

Genera e nomina Fogli come contenuto cella

Postdi aaa » 24/07/07 17:16

Dunque: :-?
- ho un file che contiene i dati di 33 punti vendita (fatturato, utili, spese, ecc.);
- ciascun punto vendita è identificato con un codice;
- tutto ciò è nel foglio 1.

Per visualizzare numericamente e graficamente l'andamento dei punti vendita, ho creato - nel Foglio 2 - una cella di controllo (B1) con un elenco da Convalida, con i 33 punti vendita;
nello stesso foglio, replico quasi identicamente il Foglio 1 e con un somma.se o cerca.vert riprendo i dati del Foglio 1, relativi al punto vendita selezionato di volta in volta in B1;
nello stesso foglio, mi crea anche dei grafici riepilogativi.

La domanda è:
1 Come faccio a generare (magari automaticamente) un numero di nuovi fogli (pari al numero dei punti vendita) che contengano i dati descritti?
2 Come faccio a nominare ogni nuovo foglio con il codice del punto vendita a cui si riferisce?
3 Si può inserire un comando che mi fa vedere i grafici solo se richiesti?

Per favore, nel caso di soluzioni che implichino le macro, vi prego di far conto di stare parlando con un bambino di tre anni (che forse ne sa anche più di me). :)

Grazie a tutti.
aaa
Utente Junior
 
Post: 22
Iscritto il: 07/07/03 17:07

Sponsor
 

Postdi Anthony47 » 26/07/07 00:47

Visto il livello dichiarato di conoscenza del vba io penserei a una soluzione piu’ semplice da gestire e magari altrettanto utile. Userei cioe’ un filtro automatico sul codice punto vendita di Foglio1, e le funzioni SUBTOTALE per i relativi calcoli statistici; guarda l’ help on line di SUBTOTALE per vedere quanti tipi di operazioni sono possibili. In piu’ subtotale lavora solo sui dati visibili, quindi ignorando gli altri dati filtrati.
Anche il grafico lo imposti su Foglio1, e anche il grafico ti plottera’ solo i dati visibili dopo il filtro.
Aggiungere infine la macro che visualizza e nasconde il grafico con le istruzioni gia’ date (ActiveSheet.Shapes(NomeImm).Visible = False e ActiveSheet.Shapes(NomeImm).Visible = True) sara’ abbastanza semplice.

In questo modo hai 1 foglio dove “esamini a video” o “stampi” i dati dei singoli punti vendita; rispetto ai 33 + 1 +1 fogli, che cosa perdi?

Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13903
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi aaa » 26/07/07 08:29

Prendo buona nota del consiglio anche se l'effetto è più o meno lo stesso di quello ottenuto con la mia soluzione, cioè due fogli di cui il primo con i tutti i dati ed il secondo con il singolo punto vendita + grafici.
Il fatto è che, nel momento in cui devo stampare il tutto, mi tocca farlo modificando ogni volta il punto vendita, cosa ben diversa da un semplice "stampa tutta la cartella".
Anche a livello di consultazione è più idoneo all'uso che devo farne.
Considera che ho tenuto conto solo di 33 dei 65 punti vendita, variabili nel tempo, quindi ho necessità di creare tanti fogli (in aggiunta al primo che deve contenere i dati di tutti) quanti sono i punti vendita.
Diciamo che mi cimenterò nell'applicazione di una eventuale soluzione proposta in macro assieme al mio collaboratore che mastica un pò più di me, in due dovremmo riuscire a mettere in pratica anche eventuali suggerimenti che arriveranno.
aaa
Utente Junior
 
Post: 22
Iscritto il: 07/07/03 17:07

Postdi Anthony47 » 26/07/07 17:00

La differenza non la vedo tra 1 e 2 fogli, ma tra 1/2 e 34/35. Anche perche’ i 33 fogli aggiuntivi sarebbero dei fogli statici, fissano i dati di quel giorno.
Comunque, se ti interessa duplicare foglio2 e nominarlo come cella B1, il seguente codice dovrebbe essere sufficiente:

Codice: Seleziona tutto
Sheets("Foglio2").Copy After:= Worksheets(Worksheets.Count)
Activesheet.Name = Range("B1").value
Sheets("Foglio2").Select



Le macro per Nascondi /Visualizza grafico, ognuna contenente 1 delle istruzioni gia’ date oltre titolo ed End, le associ a 2 pulsanti, che saranno duplicati anche loro con la macro precedente.

Se ti preoccupa, nella versione senza fogli duplicati, la facilita’ di stampa allora potresti inserire una macro che filtra in sequenza per ognuno dei punti vendita, assegnando alla tua cella B1 il relativo codice e mandando in stampa; ti puo’ interessare?

Fai sapere come procedi? Ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13903
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Genera e nomina Fogli come contenuto cella":


Chi c’è in linea

Visitano il forum: patel e 4 ospiti