Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

COPIARE DATO IN PRIMA CELLA VUOTA

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

COPIARE DATO IN PRIMA CELLA VUOTA

Postdi wittelsbach » 03/11/12 10:26

Buongiorno,
avrei bisogno di un consiglio per risolvere un problema. In un file excel è presente una tabella in cui sono elencati, mese per mese, una serie di nomi associati a rispettivi valori. Gli stessi nomi possono ripetersi in tutti i mesi, altri invece solo in alcuni. Il mio scopo sarebbe quello di copiare ogni nome (che compaia almeno una volta ovviamente) in un'altra tabella (a sinistra nell'allegato), quest'ultima schematizzata con tutti i nominativi in una colonna e la serie dei mesi consecutivi a destra. Il controllo dovrebbe essere: partendo da Gennaio, copiare un nome e i relativi valori nei rispettivi mesi di riferimento. Poi, copiare il secondo nome, i relativi valori nei rispettivi mesi riferimento. Infine, passare a Febbraio, se il nome fosse già stato inserito, allora copiare solo il valore del mese di riferimento, altrimenti se il nome non fosse mai stato inserito, copiare il nome nella prima cella vuota (sotto l'ultimo nome inserito in precedenza) e il rispettivo valore nel mese di riferimento.
In sintesi:
1. COPIARE DA "TABELLA DATI" IL PRIMO NOME (LUCA), INSERIRLO IN "tabella di destinazione" (D6) E COPIARE IL VALORE DI GENNAIO (12) IN E6. COPIARE I RESTANTI NOMI
2. IN "TABELLA DATI" COPIARE IL PRIMO NOME (MARCO) IN "TABELLA DI DESTINAZIONE; VERIFICARE SE GIA' PRESENTE: SE SI' COPIARE SOLO IL VALORE (15) NELLA COLONNA DI RIFERIMENTO (E7), ALTRIMENTI COPIARE IL NOME NELLA PRIMA CELLA VUOTA (E11)


Grazie in anticipo a chiunque sappia aiutarmi.
wittelsbach
Utente Senior
 
Post: 249
Iscritto il: 17/09/05 08:55

Sponsor
 

Re: COPIARE DATO IN PRIMA CELLA VUOTA

Postdi Anthony47 » 03/11/12 18:14

Senza complicarsi la vita: tabella pivot

Ad esempio come da immagine allegata (elenco in A:C, tabella pivot a destra)
Immagine

Uploaded with ImageShack.us
Dettagli del layout pivot:
Nomi in Etichette di riga
Mese in Etichette di colonna
Qt in Valori, scegliendo Somma di Qt e non ad esempio Conta di Qt

Puo' andare?
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: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: COPIARE DATO IN PRIMA CELLA VUOTA

Postdi wittelsbach » 04/11/12 12:56

Grazie, la tebella pivot potrebbe essere un'ottima soluzione, ma se i dati fossero raccolti come nell'immagine all'url qui sotto, come potrei crearla?
http://imageshack.us/photo/my-images/83 ... neodf.jpg/

In ogni caso, oltre alla tabella pivot, a tuo avviso, potrei adottare altre soluzioni? Ad esempio con semplici formule oppure in VBA?

Grazie ancora. Ciao.
wittelsbach
Utente Senior
 
Post: 249
Iscritto il: 17/09/05 08:55

Re: COPIARE DATO IN PRIMA CELLA VUOTA

Postdi Anthony47 » 05/11/12 01:18

Il suggerimento e' di riscrivere i dati per averli incolonnati e propriamente qualificati, e su questi prourre la pivot; cosi' come sono sembrano dei post-it :)
Siccome magari ne hai gia' tanti (dis)organizzati in quel modo allora puoi usare una macro come questa per metterli in colonna
Codice: Seleziona tutto
Sub witt()
Set myStart = Range("C4")   '<<<1 La cella con il primo nominativo
Set myDest = Sheets("Foglio2")  '<<<2 Il foglio dove si crea l' elenco ordinato
Do
    If myStart.Offset(0, I * 2).Value = "" Then Exit Do
    DestR = myDest.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
    Range(myStart.Offset(0, I * 2), myStart.Offset(0, I * 2).End(xlDown)).Resize(, 2).Copy _
        Destination:=myDest.Cells(DestR, 1)
    myDest.Cells(DestR, 1).Offset(0, 2).Resize(myDest.Cells(Rows.Count, 1).End(xlUp) _
        .Offset(1, 0).Row - DestR, 1).Value = myStart.Offset(-1, 1 + I * 2)
    I = I + 1
Loop
End Sub
Personalizza le righe marcate <<<, poi avvia le macro avendo selezionato il foglio contenente i dati di partenza.
Tieni presente che la macro copiera' i blocchi di informazioni a gruppi di 2 colonne partendo dalla cella indicata in <<<1 e procedendo verso dx fino a trovare una cella vuota; i dati saranno incollati nel foglio indicato in <<<2, accodandoli ad eventuali informazioni gia' presenti, e aggiungendo in una terza colonna la sigla del mese, usando le prime 3 lettere dei mesi indicati nella tabella di origine. Aggiungi le intestazioni di colonna e produci la tabella pivot.
La macro ricalca il layout che hai indicato nella tua figura

Se vuoi sperimentare altre soluzioni, ti dico che quello che chiedi e' molto simile a quanto realizzato per mpsinf in questo post: viewtopic.php?f=26&t=97437&p=559609#p559592

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: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "COPIARE DATO IN PRIMA CELLA VUOTA":


Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti