Verificare dati e riportarli in
riepilogo di Abcvba |
Sono un neofita di vba, ho scoperto il questo sito
che è veramente molto interessante e molto utile. vi chiedo dove
posso trovare una semplice macro che mi semplifichi un lavoro che è
davvero tedioso… riportare a mano centinaia di dati. mi spiego
meglio: avendo ottenuto un riepilogo dati tramite una tabella
pivot, come posso fare per copiare tali dati, impostati su due
colonne, su una tabella di riepilogo che contiene tutte le voci.
tale riepilogo prevede una colonna con 20 diverse provenienze e
nelle celle adiacenti la quantità ed il valore. la macro
dovrebbe verificare se nella tabella pivot ci sia la provenienza e
se si riportare nella tabella riepilogativa la suddetta quantità e
il valore.
es: tab. pivot
quant val prov1 12 100
prov2 1 34 prov4 prov6 3 12
riepilogo
quant val prov1 12 100 prov2 1 34 prov3
prov4 prov6 prov6 3 12
sono sicuro che da
qualche parte sul sito ci sia la risposta e vi sarei grato se
poteste dirmi dove trovare la soluzione. grazie anticipatamente.
|
|
Ciao ! di Apoben64 |
Diciamo che ci chiedi di realizzare una cosa in se
stessa semplice ma pur sempre soggettiva. esempio : nell'elenco
di riepilogo cosa vuoi, un somma delle quantità e dei valori per
provenzienza o l'elenco di tutto ? i dati che provengono dal
pivot cambiano e quindi dove inserire questa macro di scarico di
dati ? vediamo comunque se altri hanno qualcosa da proporci !
un saluto luca |
|
Verificare e riportare dati di
Abcvba |
Intanto ti ringrazio per la celerità della risposta
e poi cerco di spiegarmi meglio: la tabella pivot una volta
creata non viene più modificata per quel mese, quindi mi interessa
semplicemente riportare i dati ottenuti con la pivot nella tabella
di riepilogo senza sommare nulla o effettuare altre operazioni.
l’unica cosa che mi impedisce di fare un semplice copia/incolla è il
fatto che nella pivot su ad esempio 20 campi della scheda
riepilogativa posso trovarne 7, 10, ecc quindi un numero di
provenienze diverse nei vari mesi però sempre tra le 20 dello
specchietto riepilogativo. la macro quindi dovrebbe verificare
se nella pivot c’è quella provenienza e riportare semplicemente la
quantità nella cella alla sua destra ed il valore nella cella
accanto. grazie sempre anticipatamente.
|
|
Verificare e riportare dati di
Abcvba |
Intanto ti ringrazio per la celerità della risposta
e poi cerco di spiegarmi meglio: la tabella pivot una volta
creata non viene più modificata per quel mese, quindi mi interessa
semplicemente riportare i dati ottenuti con la pivot nella tabella
di riepilogo senza sommare nulla o effettuare altre operazioni.
l’unica cosa che mi impedisce di fare un semplice copia/incolla è il
fatto che nella pivot su ad esempio 20 campi della scheda
riepilogativa posso trovarne 7, 10, ecc quindi un numero di
provenienze diverse nei vari mesi però sempre tra le 20 dello
specchietto riepilogativo. la macro quindi dovrebbe verificare
se nella pivot c’è quella provenienza e riportare semplicemente la
quantità nella cella alla sua destra ed il valore nella cella
accanto. grazie sempre anticipatamente.
|
|
di Apoben64 |
Grazie , per la tua risposta, guardo se ti posso
passare al più presto un file di esempio che potrai poi adattare
alle tue esigenze. |
|
Verificare dati e riportarli in
riepilogo di Abcvba |
Grazie a te e scusate se ho inserito due volte la
risposta sul forum...(ho sbagliato... |
|
Verificare dati e riportarli in
riepilogo di Abcvba |
Grazie a te e scusate se ho inserito due volte la
risposta sul forum...(ho sbagliato... |
|
Guarda l'esempio di
Apoben64 |
Nella sezione scambio files, ti lascio un esempio,
che dovrai adattare alle tue esigenze ,. come vedrai ho
classificato le provenienze nella colonna d , in modo che se si
evidenzia il numero vuol dire che la colonna b non è vuota (usando
la semplice funzione se). la macro che dovrai ricopiare per ogni
nuovo valore , ti permette di scaricare nel foglio riepilogo i dati
, nel momento in cui agisci sul pulsante . e così per tutte le tue
provenienze. ovviamente queste di vanno ad aggiungere a quelle
precedentemente scaricate. ma al limite puoi creare un foglio col
nome di ogni provenienza . vedi tu il codice del pulsante lo
trovi all’interno del foglio1 (pivot). tutte queste informazioni ,
come le macro le trovi nel vba , azionando il tasto alt+f11.
spero ti sia chiaro ! un saluto luca
Sub copia1()
Application.CutCopyMode = False
With Worksheets("Pivot").Range("D2:D20")
Dim X As String
X = "1" 'VALORE DA CAMBIARE
Set c = .Find(X, LookIn:=xlValues)
If Not c Is Nothing Then
FIRSTADDRESS = c.Address
Do
Selection.Copy
Worksheets("Riepilogo").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
ActiveCell = c.Text
ActiveCell.Offset(0, 1) = c.Offset(0, -3).Value
ActiveCell.Offset(0, 2) = c.Offset(0, -2).Value
ActiveCell.Offset(0, 3) = c.Offset(0, -1).Value
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> FIRSTADDRESS
End If
End With
Application.CutCopyMode = True
End Sub
'-----------
Sub copia2()
Application.CutCopyMode = False
With Worksheets("Pivot").Range("D2:D20")
Dim X As String
X = "2" 'VALORE DA CAMBIARE
Set c = .Find(X, LookIn:=xlValues)
If Not c Is Nothing Then
FIRSTADDRESS = c.Address
Do
Selection.Copy
Worksheets("Riepilogo").Select
Range("A65536").End(xlUp).Offset(1, 0).Select
ActiveCell = c.Text
ActiveCell.Offset(0, 1) = c.Offset(0, -3).Value
ActiveCell.Offset(0, 2) = c.Offset(0, -2).Value
ActiveCell.Offset(0, 3) = c.Offset(0, -1).Value
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> FIRSTADDRESS
End If
End With
Application.CutCopyMode = True
End Sub
| |
|
di Abcvba |
Ti ringrazio tantissimo per l'interessamento,
adesso andrò a provare la macro. grazie di nuovo. ciao |
|
Per apoben64 di
Abcvba |
Intanto ti ringrazio per la macro che mi hai
mandato. purtroppo però questa non fa esattamente quello di cui
avevo bisogno, sicuramente perchè non mi sono spiegato bene.
infatti il problema è che la tabella delle provenienze è fissa
con le provenienze rigorosamente in ordine alfabetico. questo
perchè poi posso agevolmente fare dei report trimestrali, semestrali
ed annuali. per cui la macro dovrebbe scorrere la colonna
provenienza della pivot e se in quel mese è presente tale
provenienza dovrebbe copiare la quantità ed il valore dalla pivot di
accorpamento alla tabella con le provenienze disposte in ordine
alfabetico fissa, saltando le righe laddove non c’è, per quella
provenienza, quantità e valore. non posso fare un semplice
copia/incolla in quanto la pivot non riporta mai tutte le
provenienze, che sono venti, ogni mese ma una parte di esse.
comunque ti ringrazio per l’interessamento e per la macro che mi
hai mandato ma non vorrei essere troppo insistente per cui se puoi
aiutarmi te ne sarò estremamente grato e viceversa grazie comunque.
ciao
|
|
Per max di Apoben64 |
Capisco il tuo problema , ma non puoi fare in modo
che i risultati della tua pivot confluiscano in una serie di celle(
utilizzando incolla speciale )? in modo tale la macro può andare
a prenedre questi valori se presenti. se puoi prova a postare
una copia del tuo file , senza dati sensibili. vediamo cosa si
può fare ! |
|
di Abcvba |
Non ho capito bene il suggerimento... comunque
provo a postare un esempio di file per farmi capire meglio, sperando
di riuscirci... |
|
Riprova di Apoben64 |
Ciao, per favore riprova ad allegare un altro file,
caso mai col tuo nome. il file che ho scaricato non è in excel , ma
sembra più un riferimento php. ma potrebbe essere anche un
problema del sito. eventualemente usa la sezione contatti.
un saluto luca |
|
di Abcvba |
Il file va bene tant'è che anch'io avendo avuto il
dubbio l'ho scaricato e salvato aggiungendo l'estensione xls ed il
file si è aperto. ma, non ho capito come, anche se lo salvi con
l'estensione php cliccandoci sopra lo apre lo stesso come file
excel. avevo provato anche quando c'erano altri file di altri
utenti ed effettiavemente funzionava così... ciao e sempre
grazie. |
|
Max1 di Apoben64 |
Ti restituisco il file "max1". vedendo il tuo
esempio , ho preferito evitare il vba e optare per una semplice
funzione somma.se . ti prego di non toccare, al momento, il
foglio di riepilogo, dove è inserita la formula per tutte le 20
provenienze. preciso che ho lavorato solo sulla pivot-a , in quanto
puoi replicare il tutto anche per il pivot b. nell'intervallo della
colonna b ( ma si può restringere il tutto alle effettive uscite dei
dati contenute nelle celle) ad ogni valore presente in c o d , hai i
valori nella tabella di riepilogo. prova quindi a modificate i
dati che hai immesso nel foglio pivot-a colonne c e d e vedi se può
andar bene. ovviamente se questo è ciò che volevi bisognerà
salvare la tabella di riepilogo , in quanto i dati ad ogni
inserimento si modificano automaticamente. spero di essere stato
chiaro ! ma sopratutto di averti aiutato o compreso bene . il
file lo trovi nell'apposita sezione. comunque ci sentiamo ! un
saluto luca |
|
di Abcvba |
Perfetto, finalmente non dovrò inserire a mano
centinaia di dati visto che le sezioni erano 5. adesso adeguo la
formula alle mie esigenze. grazie davvero. ciao |
|
di Apoben64 |
Bene, alla prossima !!!!!! |