DOMANDA SU FORMULA VARIABILE EXCEL
Hai un problema con Excel? 
DOMANDA SU FORMULA VARIABILE EXCEL
di DAVIDE (utente non iscritto) data: 15/01/2018 12:04:21
Ciao A tutti , devo realizzare una funzionalità particolare su excel,
in pratica ho un file con due fogli ("REGISTRO" e "DEPOSITI") , nel foglio "DEPOSITI" alla casella "b157" ho la formula:
=SE(REGISTRO!P620="D";REGISTRO!O620;"")
e cioe: se nel foglio REGISTRO alla casella P620 c'è scritto "D" allora ricopiami in questa casella "B157" del foglio "DEPOSITI" il contenuto della casella "O620" del foglio "REGISTRO".
fin qui tutto ok ma come posso rendere variabile quel numero 620 nella formula in base ad un numero che inserisco in una data casella (ad esempio nella colonna "A157" del foglio depositi?
in pratica voglio che le caselle di riferimento da cui va a prendere i dati dell'altro foglio siano esattamente relative alla riga che corrisponde al numero che ho inserito in una data casella.
Cioè la variabile sia solo il numero di riga mentre i riferimenti di colonna in lettere sono gia determinati.
Grazie
Davide
di alfrimpa data: 15/01/2018 12:21:37
Ciao Davide
Allega un file di esempio con un po' di dati (non sensibili) inserendo a mano il risultato desiderato.
Alfredo
foto file di esempio
di Davide (utente non iscritto) data: 15/01/2018 15:05:19
in allegato anche una piccola spiegazione figurata
. in pratica i numeri di riga delle celle C e B contenuti nella formula del foglio depositi devono variare se nella colonna A scrivo un determinato numero che è la riga di riferimento del foglio registro, che verranno appunto riportati nella formula variabile.
Davide
di Ciano (utente non iscritto) data: 15/01/2018 15:15:16
Giorno a tutti, in questo periodo ho cercato anche io per valori variabili per altra situazione ... tra le cose vedi se potrebbe andarti questo esempio:
1) in cella neutra del foglio DEPOSITI (nella mia formula ho usato la cella A1) inserisci il nome foglio REGISTRO
2) in cella neutra del foglio DEPOSITI (nella mia formula ho usato la cella B1) da inserire il numero di righe che vorresti scendere nel foglio REGISTRO
3) nella cella che hai predisposto per il risultato inserisci questa formula:
=SE.ERRORE(SE(INDIRETTO("'"&$A1&"'!P"&DEPOSITI!B1)="D";INDIRETTO("'"&$A1&"'!O"&DEPOSITI!B1);"");"INSERIRE IL NUMERO DI RIGA")
praticamente la formula sopra cerca nel foglio scritto in cella A1, colonna P alla numero riga scritto nel foglio DEPOSITI cella B1 la D .... se trova la D riporta quello scritto in colonna O del foglio REGISTRO alla stessa riga ... se non trova la D riporta blank .... attenzione se non viene indicato nessuna riga da cercare riporta la scritta "inserire il numero di riga".
non so se è quello che cercavi, potrebbe essere uno spunto
ciao
buona giornata
Ciano
di Ciano (utente non iscritto) data: 15/01/2018 15:23:42
Davide scusa, ho risposto mentre tu stavi inserendo il File e non ho letto quanto hai scritto prima di me.
comunque ho riallegato il tuo file con la formula
ciao
Ciano
di alfrimpa data: 15/01/2018 15:25:05
Oltre alla soluzione di Ciano (che saluto) ti propongo la macro che vedi sotto che ogni volta che inserisci "D" in colonna C del foglio "REGISTRO" I relativi dati vengono archiviati sul foglio "REGISTRO".
Ho allegato il file davide.xlsm
Alfredo
Private Sub Worksheet_Change(ByVal Target As Range)
Dim ur As Long
ur = Sheets("DEPOSITI").Cells(Rows.Count, 1).End(xlUp).Row
If Not Intersect(Target, Range("C:C")) Is Nothing Then
If Target.Rows.Count > 1 Then Exit Sub
If Target.Value = "D" Then
Sheets("DEPOSITI").Cells(ur + 1, 1).Value = Target.Offset(0, -2).Value
Sheets("DEPOSITI").Cells(ur + 1, 2).Value = Target.Offset(0, -1).Value
End If
End If
End Sub
|
NON VA :(
di dAVIDE (utente non iscritto) data: 15/01/2018 16:50:24
Grazie Ciano e grazie Alfredo.
La formula con la macro non riesco a capirla, in ogni caso non riesco a fargli fare quello che intendevo.
la formula di Ciano forse è piu semplice ma non mi funziona lo stesso.
Nella colonna C4 del foglio Registro c'è la condizione "D" ma nel foglio depositi alla riga B2 non mi ritrascrive la parola "cielo".
PS. i campi colonna "O" e "p" di cui dicevo nel primo messaggio non erano corretti m avete capito ugualmente.
Davide
di Ciano (utente non iscritto) data: 15/01/2018 17:02:37
Ciao Davide,
hai scaricato il file che ho inserito?
in quel file funge tutto, provalo.
Fai attenzione, serve una cella neutra con il nome foglio dove fare al ricerca ed il numero di riga che inserisci non può essere il tuo numero progressivo (nel tuo caso il tre) ma deve essere la riga del foglio, quindi "4".
spero che ti sia di aiuto
buona serata
Ciano
di alfrimpa data: 15/01/2018 17:53:58
Scusa Davide ma il mio file lo hai provato?
Il risultato che dà in cosa differisce dalle tue aspettative?
Alfredo
forse ho capito perche non va..
di Davide (utente non iscritto) data: 22/01/2018 12:23:38
Forse credo di capire perche non va (scusate non mi intendo di VBA), in pratica l'excel che uso è solo excel e non Excel VBA? per cui le formule che avete proposto non vanno.. puo' essere per questo?
ho un excel pro 2003..
Davide
di alfrimpa data: 22/01/2018 13:00:23
Ma hai provato il file che ti ho allegato (davide.xlsm di alfrimpa) che è già funzionante).
Spiega quello che fai e cosa non va?
Hai attivato le macro sul tuo Excel nel Centro Protezione?
Alfredo
di Ciano data: 22/01/2018 13:27:06
giorno a tutti,
Davide il mio primo file era un esempio e dovevi adattarlo alle tue esigenze con altre estensioni del codice.
a prescindere che la macro di Alfredo (che saluto), pure a me funziona benissimo
ho provato a riadattare la formula, anticipatamente proposta, inserendo il tutto "spero" al posto giusto.
mi raccomando nel foglio DEPOSITI ci deve essere una cella con il nome del foglio di ricerca, nel tuo caso REGISTRO
prova a vedere il file che ho allegato "esempio2 ciano".
Cordialità
Ciano
ecco perche non funziona!
di Davide (utente non iscritto) data: 26/01/2018 09:15:29
Ciao Ciano! ho capito..
Il problema era EXCEL, in ufficio ho una versione 2003 e non funziona.
Ho provato a casa dove ho un office nuovo e funziona!
Purtroppo quindi in ufficio non c'è modo di farla andare.
Ci andrebbe una formula senza macro :(
di alfrimpa data: 26/01/2018 09:35:20
Davide non è un problema di versione di Excel.
Su Excel 2003 che hai in ufficio le macro sono abilitate?
Che messaggio ricevi se tenti di eseguire la macro sul 2003?
Alfredo
di Ciano (utente non iscritto) data: 26/01/2018 09:40:13
ciao Davide.
Per la proposta di Alfredo non penso che sia problema di incompatibilità ... ma una domanda, hai attivato le macro in excel 2003?
presumo che per attivarle dovresti andare sul foglio: Strumenti,Macro,Protezione, seleziona livello medio, e poi dovresti fare Attiva Macro ... salva il tutto.
Mentre la mia proposta era solo di formule ... da inserire nelle celle.
riprova
Buona Giornata
di Ciano (utente non iscritto) data: 26/01/2018 09:42:20
ops.. Scusa Alfredo .. ho scritto ed inviato .. mi sono sovrapposto.
di alfrimpa data: 26/01/2018 10:03:27
Nessun problema Ciano
Alfredo
allego schermata non funzionante
di DAVIDE (utente non iscritto) data: 26/01/2018 11:29:30
Ciano il tuo file funziona benissimo a casa ma qui in ufficio è totalmente diverso. ho allegato la schermata di come lo vedo qui..completamente diverso rispetto a casa e non funzionante.. boh :(
di alfrimpa data: 26/01/2018 11:58:13
Se con quella schermata ti riferisci alla mia soluzione non è possibile perché la mia macro non dà #NOME
Quell'errore deriva da una formula (non macro) il cui nome non è stato correttamente digitato.
ma la mia soluzione quella con la macro l'hai provata?
Allega il file che dici non funzionante.
Alfredo
la schermata è riferita a esempio di CIANO
di DAVIDE (utente non iscritto) data: 26/01/2018 12:31:56
no, è quella di CIANO che a casa funziona bene invece
di alfrimpa data: 26/01/2018 12:34:19
Allora l'unica risposta possibile è che hai commesso un errore di digitazione nella formula.
Alfredo
P.S. Perché non provi anche la mia?
di Ciano (utente non iscritto) data: 26/01/2018 12:35:35
Davide ciao,
mi sembra strano perchè il file è compatibile con 97-2003.
L'errore potrebbe essere dato per una mancanza di funzione nella tua versione, eventualmente prova a fare l'aggiornamento del tuo office.
In alternativa, come prova, inserisco altri due file ma con estensioni diverse ".xlt" e ".xml", purtroppo non avendo a disposizione un excel 2003 non posso verificarlo è solo un palliativo.
di Ciano (utente non iscritto) data: 26/01/2018 12:48:52
ho fatto una breve ricerca.. magari potrebbe essere utile
su questo sito:
h t t p://www.uniqaconsulting.it/aprire-file-excel-word-powerpoint-2007-o-2010-con-versioni-precedenti/
c'è un piccolo preambolo per apertura file di nuova generazione con versioni office datate, con un link che ti porta direttamente alla microsoft.
non so se potrebbe essere utile
saluti
di alfrimpa data: 26/01/2018 13:33:24
Ciano il problema è il SE.ERRORE() disponibile dalla versione 2007 in poi.
Credo si possa ovviare con un SE(VAL.ERRORE.......) ma io con le formule ci faccio a cazzotti.
Alfredo
di Ciano (utente non iscritto) data: 26/01/2018 14:41:05
azzz .... Alfredo ... mica ci avevo pensato ... naggia a me
grazie mille ...
ho allegato un file "esempio3" con formula riadattata e lasciamo stare il contenuto ...ahahaha
... Davide prova a scaricare il file e vedi se funge...
grazie mille
ritenta e sarai più fortunato ... ahahah
Ciano
di alfrimpa data: 26/01/2018 14:49:27
Col VBA non ci saranno stati tutti questi problemi
Alfredo
di Ciano (utente non iscritto) data: 26/01/2018 14:56:55
... ehehehehe ... si vero Alfredo, in effetti la tua macro funge ottimamente ovviando a molti problemi.
Il problema più grosso delle formule in cella è che appesantiscono (non è questo il caso) il file stesso.
a proposito ... Davide, la macro di Alfredo non va inserita in un Modulo ma deve essere inserita nel codice del foglio ... provaci e rimarrai più che soddisfatto ne sono sicuro.
Ciano
di alfrimpa data: 26/01/2018 15:06:48
Cit. " Davide, la macro di Alfredo non va inserita in un Modulo ma deve essere inserita nel codice del foglio".
E secondo te è facile capire questa frase?
Alfredo
FUNZIONA COMPLIMENTI!
di DAVIDE (utente non iscritto) data: 29/01/2018 14:40:57
GRANDISSIMI TUTTI! FUNZIONA CON L'ESEMPIO3 di CIANO.
CHE FORMULONA NON CI SAREI MAI ARRIVATO
Vuoi Approfondire?