Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Inserimento riga su due fogli collegati

Ultimo Aggiornamento: 14/03/2019 15:26
Post: 8
Registrato il: 11/03/2019
Città: MACERATA
Età: 51
Utente Junior
2016
OFFLINE
11/03/2019 16:52

Nel file in allegato se inserisco un riga nel foglio Elenco (es. una riga vuota tra u e v per mettere w) non la prende in automatico nel foglio Prezzo. Avete dei suggerimenti in merito?
Grazie.
Post: 4.129
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
11/03/2019 18:52

Carlitos19

Se due fogli son "collegati" tra loro con delle semplici formule non significa che una qualsiasi modifica di struttura del primo si ripercuota sul secondo.

Solo per fare un esempio; con questa macro se si inserisce una riga sul foglio1 questa viene aggiunta nello stesso posto sul foglio2

vb
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("Prezzo").Rows(ActiveCell.Row & ":" & ActiveCell.Row).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
End Sub


Ma se sul primo foglio la riga anzichè inserirla la elimini sul secondo foglio viene comunque aggiunta e non eliminata.
[Modificato da alfrimpa 11/03/2019 18:53]

Alfredo
Post: 666
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
ONLINE
11/03/2019 18:57

Ciao
Per fare quello che vuoi penso bisogna ricorrere al VBA.
Comunque una cosa artigianale potrebbe essere questa:
nel Foglio Elenco seleziona da A3 fino A100 e denominalo Sostanze (dopo aver selezionato l'intervallo vai sopra, a sinistra della barra della formula e scrivi Sostanze. Hai creato un nome definito)
Vai nel Foglio Prezzo e in A3 scrivi =Sostanze e vedrai che spunta lo stesso valore di A3 del Foglio Elenco. Seleziona la cella dove hai scritto e ricopiala in basso fino a 100. Ti spunteranno i valori relativi dell'altro Foglio. Per le celle che non contengono nulla di spunta uno 0, ma la cosa si può ovviare scrivendo =SE(sostanze<>"";sostanze;"")

Ribadisco: è meglio ricorrere a VBA.
Ciao,
Mario
Post: 9
Registrato il: 11/03/2019
Città: MACERATA
Età: 51
Utente Junior
2016
OFFLINE
12/03/2019 15:28

Re:
alfrimpa, 11/03/2019 18.52:

Carlitos19

Se due fogli son "collegati" tra loro con delle semplici formule non significa che una qualsiasi modifica di struttura del primo si ripercuota sul secondo.

Solo per fare un esempio; con questa macro se si inserisce una riga sul foglio1 questa viene aggiunta nello stesso posto sul foglio2

vb
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("Prezzo").Rows(ActiveCell.Row & ":" & ActiveCell.Row).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
End Sub


Ma se sul primo foglio la riga anzichè inserirla la elimini sul secondo foglio viene comunque aggiunta e non eliminata.



Non funziona Alfredo.
Post: 4.132
Registrato il: 21/06/2013
Città: NAPOLI
Età: 70
Utente Master
Excel 365
OFFLINE
12/03/2019 15:39

Cosa significa non funziona?

Non succede niente o dà errore?

Prima di allegarla la macro ovviamente l'ho provata ed a me ha funzionato.

Però sono del parere che le strutture dei fogli vadano decise a priori ed inserire/eliminare righe o colonne in corsa non è mai una buona cosa.

Hai provato il suggerimento di Marius44?

Alfredo
Post: 10
Registrato il: 11/03/2019
Città: MACERATA
Età: 51
Utente Junior
2016
OFFLINE
12/03/2019 15:58

Non succede niente. 🤗
Post: 11
Registrato il: 11/03/2019
Città: MACERATA
Età: 51
Utente Junior
2016
OFFLINE
12/03/2019 16:05

Re:
Marius44, 11/03/2019 18.57:

Ciao
Per fare quello che vuoi penso bisogna ricorrere al VBA.
Comunque una cosa artigianale potrebbe essere questa:
nel Foglio Elenco seleziona da A3 fino A100 e denominalo Sostanze (dopo aver selezionato l'intervallo vai sopra, a sinistra della barra della formula e scrivi Sostanze. Hai creato un nome definito)
Vai nel Foglio Prezzo e in A3 scrivi =Sostanze e vedrai che spunta lo stesso valore di A3 del Foglio Elenco. Seleziona la cella dove hai scritto e ricopiala in basso fino a 100. Ti spunteranno i valori relativi dell'altro Foglio. Per le celle che non contengono nulla di spunta uno 0, ma la cosa si può ovviare scrivendo =SE(sostanze<>"";sostanze;"")

Ribadisco: è meglio ricorrere a VBA.
Ciao,
Mario



Ciao Mario, dove inserisco la funzione SE?
Post: 667
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
ONLINE
12/03/2019 16:34

Ciao
Allora non hai letto cosa ti ho scritto?
Non devi "solo" inserire la formula ma, prima, fare tutto il resto.

Ciao,
Mario
Post: 12
Registrato il: 11/03/2019
Città: MACERATA
Età: 51
Utente Junior
2016
OFFLINE
12/03/2019 17:52

ho "LETTO" quello che hai scritto! infatti funziona, intendevo la formula per non avere lo zero...
Post: 668
Registrato il: 24/06/2015
Città: CATANIA
Età: 80
Utente Senior
Excel2019
ONLINE
12/03/2019 18:24

Ciao
credevo non avessi letto!!!!
Allora, se quanto suggerito funziona non devi fare altro che inserire, al posto di

=sostanze"

la formula

=SE(sostanze<>"";sostanze;"")

Ciao,
Mario
Post: 14
Registrato il: 11/03/2019
Città: MACERATA
Età: 51
Utente Junior
2016
OFFLINE
14/03/2019 15:26

Grazie Mario!
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 09:23. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com