Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

estrarre celle da una tabella in base a dei criteri

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

estrarre celle da una tabella in base a dei criteri

Postdi johnjesburg » 13/07/10 17:56

Ciao,
allora io ho una colonna di nomi a fianco dei quali ci sono diverse colonne (con dei titoli che le caratterizzano in cima ad esse) con delle date, tra queste date c'è sempre una data di scadenza (uguale per tutti), la mia domanda come faccio ad estrarre con una macro (quindi semplicemente cliccando sul tasto della macro che inserirei) su dei fogli nuovi (con la caratteristica di ciascuna colonna), i nominativi delle persone che per ciascuna colonna presentano la stessa data di scadenza ?
Io inserivo in una cella una formula col SE, ma poi dovevo trascinare e cancellare le righe vuote che non c'entrano con la mia ricerca, io invece vorrei volocizzare l'estrapolazione dei nominativi cliccando su un semplice tasto di una macro.

Grazie a tutti quanti mi risponderanno
johnjesburg
Utente Junior
 
Post: 15
Iscritto il: 10/04/09 12:38

Sponsor
 

Re: estrarre celle da una tabella in base a dei criteri

Postdi Anthony47 » 13/07/10 21:14

Prima di abbozzare una proposta vorrei vedere il layout dei dati; basta uno screenshot in cui siano evidenti le righe e le colonne interessate, trovi le istruzioni qui: viewtopic.php?f=26&t=80395#p466013

Ti anticipo anche che non ho ben capito la storia delle date di scadenza che e' "uguale per tutti", quindi se pensi che lo screenshot non sia illuminante prova a dire qualcosa in piu' su questo aspetto.

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

Re: estrarre celle da una tabella in base a dei criteri

Postdi johnjesburg » 14/07/10 07:55

la tabella è più o meno questa:
Immagine

Uploaded with ImageShack.us
dove 01/07/2010 è la data di scadenza,
e da questa vorrei ricavare ogni foglio per ogni colonna così per es.:

http://img257.imageshack.us/i/es2zg.jpg/
solo che quest'ultima l'ho ricavata con un procedimento un pò lungo, cioè con una formula con un SE (come appare nell'immagine)

Chiaro adesso ?
johnjesburg
Utente Junior
 
Post: 15
Iscritto il: 10/04/09 12:38

Re: estrarre celle da una tabella in base a dei criteri

Postdi johnjesburg » 14/07/10 08:05

Scusate ma come faccio a modificare un mio ultimo messaggio ?
johnjesburg
Utente Junior
 
Post: 15
Iscritto il: 10/04/09 12:38

Re: estrarre celle da una tabella in base a dei criteri

Postdi Anthony47 » 15/07/10 10:02

Scusa il ritardo...
Manca la seconda immagine (http://img257.imageshack.us/i/es2zg.jpg/), quella con l' output desiderato.

Non puoi modificare un post gia' online.

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

Re: estrarre celle da una tabella in base a dei criteri

Postdi johnjesburg » 15/07/10 10:57

Allora,
tento di allegare anche l'altra immagine, ma non è tanto importante perchè rappresenta un foglio riportante il titolo della colonna "scadenza corso 01"; in questo foglio in una casella ho scritto la formula =SE(Foglio1!C4=40360;Foglio1!B4;"") e poi l'ho trascinata verso il basso in maniera che Excel così mi visualizza le porsone che hanno in scadenza il corso 01 (questo è solo un es. ma in un altro file ho molte più persone). Poi ovviamente ho cancellato le righe vuote per ottenere le persone in scadenza tutte unite.
La stessa cosa poi l'ho fatta in un altro foglio per le persone in scadenza per il corso 2, dove la formula da trascinare diventa =SE(Foglio1!D4=40360;Foglio1!B4;"") e così via per gli altri fogli e corsi in scadenza.
40360 è il valore numerico della data di scadenza (cioè appunto 01/07/2010).
Onde evitare sempre tutti questi passaggi macchinosi, io vorrei una macro che per ogni foglio mi elenchi le persone del corso in scadenza.
Immagine

Ciao
johnjesburg
Utente Junior
 
Post: 15
Iscritto il: 10/04/09 12:38

Re: estrarre celle da una tabella in base a dei criteri

Postdi johnjesburg » 15/07/10 11:00

O meglio vorrei un tasto (cioè una macro) in ogni foglio dei corsi in scadenza che se cliccato mi ordini le persone in scadenza.
johnjesburg
Utente Junior
 
Post: 15
Iscritto il: 10/04/09 12:38

Re: estrarre celle da una tabella in base a dei criteri

Postdi Flash30005 » 15/07/10 12:07

Non è ancora tutto chiaro ma avevo già approntato una macro che distribuisce gli utenti su fogli aventi il nome del Corso (Corso 01, Corso 02 etc) attraverso la data scelta (cella I2).
La tabella che si vede nella prima immagine l'ho inserita in un foglio che ho chiamato "Elenco"
nella colonna B dalla riga 4 in poi ci sono i nomi utenti
nella colonna C, D, E, F, nella riga 3 la testata dei quattro corsi e dalla riga 4 in poi le date.
In I2 deve essere digitata la data utile per copiare il corrispondente utente nel rispettivo foglio del corso.
Codice: Seleziona tutto
Sub Estrai()
For Each Ws In Worksheets
    If Ws.Name <> "Elenco" Then
        URF = Worksheets(Ws.Name).Range("A" & Rows.Count).End(xlUp).Row
        Worksheets(Ws.Name).Range("A2:B" & URF).Clear
    End If
Next Ws
UR = Worksheets("Elenco").Range("B" & Rows.Count).End(xlUp).Row
Range("C4:F" & UR).Interior.ColorIndex = xlNone
Range("C4:F" & UR).Font.ColorIndex = 0
dataM = [I2]
For CC = 3 To 6
    For RR = 4 To UR
    If Cells(RR, CC).Value = dataM Then
    Foglio = Cells(3, CC).Text
   ' MsgBox dataM
      Sheets("Elenco").Cells(RR, 2).Copy Destination:=Sheets(Foglio).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
      Sheets("Elenco").Cells(RR, CC).Copy Destination:=Sheets(Foglio).Cells(Rows.Count, 2).End(xlUp).Offset(1, 0)
      Cells(RR, CC).Font.ColorIndex = 2
      Cells(RR, CC).Interior.ColorIndex = 3
    End If
    Next RR
Next CC
End Sub


Il file test è disponibile Qui

Fai sapere
Ciao

Nota: Utlizzando la macro attuale, in un altro file di excel , si dovrà rinominare il foglio, contenente la tabella dati, con nome "Elenco". Pena la cancellazione di tutte le celle
Flash
Win7 + Office 2010 Ita
"Fotografica" al servizio dell'immagine

Ottime opportunità di lavoro (part-time o full-time) con guadagni immediati. Info in MP
Avatar utente
Flash30005
Moderatore
 
Post: 8460
Iscritto il: 27/09/07 11:44
Località: Roma +o-


Torna a Applicazioni Office Windows


Topic correlati a "estrarre celle da una tabella in base a dei criteri":


Chi c’è in linea

Visitano il forum: patel e 6 ospiti