PDA

View Full Version : [Excel] Formula: se cella = X copia contenuto nel foglio chiamato X


phantom85
08-05-2011, 12:53
Ciao a tutti,

spero di aver azzeccato la sezione. Dovrei fare una formula su un file excel.

Tale file è composto da alcuni fogli, uno principale e gli altri "secondari".

La formula dovrebbe fare questo:
- se in una cella della colonna G del foglio principale scrivo il nome di uno dei fogli secondari allora il contenuto di una cella della colonna F (foglio principale) deve copiarsi nel foglio corrispondente, in una riga disponibile.

Ad esempio:

Foglio Principale: cella F2 scrivo 100, nella cella G2 scrivo test
Foglio test: nella prima riga vuota dovrò ritrovarmi una cella con scritto 100.


Spero riusciate ad aiutarmi! Grazie!!

zuper
09-05-2011, 11:18
Ciao a tutti,

spero di aver azzeccato la sezione. Dovrei fare una formula su un file excel.

Tale file è composto da alcuni fogli, uno principale e gli altri "secondari".

La formula dovrebbe fare questo:
- se in una cella della colonna G del foglio principale scrivo il nome di uno dei fogli secondari allora il contenuto di una cella della colonna F (foglio principale) deve copiarsi nel foglio corrispondente, in una riga disponibile.

Ad esempio:

Foglio Principale: cella F2 scrivo 100, nella cella G2 scrivo test
Foglio test: nella prima riga vuota dovrò ritrovarmi una cella con scritto 100.


Spero riusciate ad aiutarmi! Grazie!!

è un abbozzo adattabile alle tue esigenze :)

Sub aggiorna_fogli()
foglio_dest = Range("g2").Value

Sheets("Foglio1").Select
Range("F2").Select
Selection.Copy
Sheets(foglio_dest).Select
Range("a1").Select
Selection.End(xlDown).Select
Selection.End(xlDown).Select
Selection.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
End Sub

Fabrizioadelante
27-06-2011, 12:45
Forse l'osservazione risulterà banale e perdonatemi per questo ma come faccio ad estendere l'ambito di operatività della macro alle svariate righe che compongono il mio foglio principale?

Mi spiego meglio, il mio caso è pressocche uguale a quello fin qui descritto (forse) con la sola differenza che io ho un foglio principale (foglio1) composto da qualche migliaia di righe ed una settantina di fogli secondari di destinazione
Nella colonna c è indicato un valore corrispondente al nome del foglio di destinazione (sono una settantina) ed io dovrei copiare ciascuna riga in uno dei fogli di destinazione (secondari) definiti dal valore della cella c
Con la macro sopra riportata riesco a farlo per una sola riga
forse sbaglio qualcosa nel comando:
foglio_dest = Range("c1").Value

Vi ringrazio fin d'ora