| | Post: 1 | Registrato il: 13/10/2013
| Città: BUSSETO | Età: 54 | Utente Junior | 365 | | OFFLINE | |
|
13/10/2013 16:26 | |
buongiorno
avrei bisogno di creare una funzione personalizzata che tra le altre operazioni, operi su un range. Es.
= (a1*D1)/conta.numeri(a1:d1)
Finora ho sempre lavorato su singole celle e non so come passargli il range.
Mi potete aiutare?
grazie mille.
m. |
|
| | Post: 1.440 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Veteran | 2010 | | OFFLINE |
|
13/10/2013 16:55 | |
ciao
non so se ho ben capito.
ti riferisci a qualcosa del genere?
=PRODOTTO(A1:D1)/CONTA.NUMERI(A1:D1)
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 1 | Registrato il: 13/10/2013
| Città: BUSSETO | Età: 54 | Utente Junior | 365 | | OFFLINE | |
|
13/10/2013 17:01 | |
esatto.
Le mie conoscenze sono limitatissime,
non so se sbaglio a indicargli il range o la funzione conta ecc.
grazie 2010 |
| | Post: 1.442 | Registrato il: 04/07/2012
| Città: BARCELLONA POZZO DI GOTTO | Età: 61 | Utente Veteran | 2010 | | OFFLINE |
|
13/10/2013 17:06 | |
ma la formula che ti ho proposto, da il risultato voluto???
diversamente, dovresti spiegare meglio il quesito, possibilmente con allegato file di esempio.
se
a1=1
b1=2
c1=3
d1=4
quanto è il risultato voluto???
se è 6, allora la formula di prima è quella giusta [Modificato da ninai 13/10/2013 17:08]
--------------------------------------------------
"So che spiegare il proprio problema, in modo comprensibile, richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit. "Scossa")
--------------------------------------------------
excel 2010 ,
Win 8 |
| | Post: 1.403 | Registrato il: 27/07/2010
| Utente Veteran | | | OFFLINE |
|
13/10/2013 17:13 | |
maria(1970), 13/10/2013 16:26:
buongiorno
avrei bisogno di creare una funzione personalizzata che tra le altre operazioni, operi su un range. Es.
= (a1*D1)/conta.numeri(a1:d1)
Ciao,
intanto benvenuta poi, direi che hai posto la domanda in modo poco chiaro.
Stiamo parlando di una UDF (quindi VBA)?
Per citare una citazione citata dal buon ninai (chissà chi ne è l'autore ):
ninai:
"So che spiegare il proprio problema in modo comprensibile richiede un certo impegno ed è un lavoro "palloso", ma qualcuno lo deve pur fare ....., indovina chi?" (Cit.)
[Modificato da scossa 13/10/2013 17:17]
Bye!
scossa
scossa's web site
___
Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw) |
| | Post: 3.647 | Registrato il: 14/11/2004
| Utente Master | Office 2019 | | OFFLINE |
|
13/10/2013 17:43 | |
Ciao Maria, la prima cosa inserisci la tua versione Excel nella tua firma come fare clicca in fondo alla mia firma.
"VVVVualà", quante risposte in poco tempo, ci siamo accavallati
eccoti la tua Funzione
Function Maria(rng1 As Range, rng2 As Range, rng3 As Range)
Maria = (rng1 * rng2) / WorksheetFunction.CountA(rng3)
End Function
la copy in un modulo VBA
poi in una cella dove vuoi scrivi
ed avrai il tuo risultato
A1 e B1 sono i due valori da moltiplicare ed F15:F40 è l'intervallo del contanumeri
l'ho chiamata Maria, ma sostituendo Maria ad altro, potrai cambiare nome alla funzione.
Ciao By Sal
[Modificato da by sal 13/10/2013 17:45] se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui |
| | Post: 2 | Registrato il: 13/10/2013
| Città: BUSSETO | Età: 54 | Utente Junior | 365 | | OFFLINE | |
|
13/10/2013 17:45 | |
scusate,
mi sono spiegata male, avrei bisogno di una udf vba
che applichi la formula
= a1*d1/conta(a1:d1)
Se devo fare una funzione del tipo
Sub function x (y,z)
x = y+z^2 ce la faccio
ma non vado oltre.
Ho letto diverse cose in giro, ma non ho trovato qualcosa in tal
senso.
grazie mille e scusate ancora
m. 2010 |
| | Post: 1.405 | Registrato il: 27/07/2010
| Utente Veteran | | | OFFLINE |
|
13/10/2013 17:53 | |
maria(1970), 13/10/2013 17:45:
scusate,
mi sono spiegata male, avrei bisogno di una udf vba
che applichi la formula
= a1*d1/conta(a1:d1)
Ci sono più modi per fare quello che chiedi.
Ad esempio puoi passare come unico argomento il range:
e nel codice risalire alle due celle estreme
Function miaUDF1(ByVal rRng As Range) As Double
With rRng
miaUDF1 = .Cells(1, 1).Value * .Cells(.Rows.Count, .Columns.Count).Value / Application.Count(.Cells)
End With
End Function
Oppure puoi passare due argomenti: la cella iniziale e la cella finale del range:
e nel codice costruire il range
Function miaUDF2(ByVal rPrima As Range, ByVal rUltima As Range) As Double
miaUDF2 = rPrima.Value * rUltima.Value / Application.Count(Range(rPrima, rUltima))
End Function
Infine puoi passare tre argomenti come nell'udf di Sal (ciao):
Bye!
scossa
scossa's web site
___
Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw) |
| | Post: 3 | Registrato il: 13/10/2013
| Città: BUSSETO | Età: 54 | Utente Junior | 365 | | OFFLINE | |
|
13/10/2013 18:16 | |
grazie infinite a tutti
anche per le spiegazioni
è ciò che mi serve.
m. 2010 |
|
|