OVH Cloud OVH Cloud

Calcul de la surface d'un Shape

23 réponses
Avatar
Marc
Bonjours a tous et a toutes
Je cherche =E0 calculer la surface en pixel d'un Shape en VB=20
sous Excel

Cela fait pas mal de temps que je cherche et je ne trouve=20
pas...

Par avance merci.
Marc

10 réponses

1 2 3
Avatar
Daniel.M
Et pour 500 ? C'est quoi ton code?

Salutations,

Daniel M.

"garnote" wrote in message
news:NxkRa.47569$
J'ai retrouvé ma solution qui donne bien 4 562 :

Sub Changer_100()
Dim n As Integer, s As Integer
For n = 0 To 10
s = s + Round((10 * n + 4) ^ 2 / 20) * Round((14 - n) ^ 2 / 20)
Next n
MsgBox Format(s, "#,##0")
End Sub

Serge


"gee-dee-" a écrit dans le message de news:
#jyBDo#
Bonsoir Serge
la réponse est 4562 façons différentes
(il me semble que la solution avait été donnée trés rapidement, malgré
l'énoncé erroné de 500$ )
;-)))) moi j'avais éxplosé ma feuille de calcul .

mais si l'on oblige l'utilisation d'au moins un billet ou pièce de
chaque


valeur
le nombre de façon chute à : 15
@+

"garnote" a écrit dans le message de
news:GWjRa.47566$
Non seulement je n'ai pas répondu, (maudites vacances !)
mais il fallait lire :
De combien de façons différentes peut-on obtenir
100$ (et non pas 500$) en utilisant des billets
de 5$, 10$, 20$, et 50$ et des pièces de 1$ et 2$ ?

Serge


"Daniel.M" a écrit dans le message de news:
#
Pas de challenge pour moi, cet été !


Ouais, il est vraiment en vacances, notre Serge. Il ne répond guère
plus



à
ceux qui répondent à tes challenges (i.e. Une Colle VBA) ...

Salutations quand même ;-)

Daniel M.
















Avatar
Daniel.M
En effet. Et c'est bien le clin d'oeil que ma réponse d'alors suggérait.

"garnote" wrote in message
news:GWjRa.47566$
Non seulement je n'ai pas répondu, (maudites vacances !)
mais il fallait lire :
De combien de façons différentes peut-on obtenir
100$ (et non pas 500$) en utilisant des billets
de 5$, 10$, 20$, et 50$ et des pièces de 1$ et 2$ ?

Serge



Avatar
Jean-François Aubert
.....ne suis pas sûr que d'ici à Noël me suffira à comprendre cette formule.....

--
Amicalement

Jean-François Aubert
{Vaudois de la Côte Lémanique}


"garnote" a écrit dans le message de
news:NxkRa.47569$
J'ai retrouvé ma solution qui donne bien 4 562 :

Sub Changer_100()
Dim n As Integer, s As Integer
For n = 0 To 10
s = s + Round((10 * n + 4) ^ 2 / 20) * Round((14 - n) ^ 2 / 20)
Next n
MsgBox Format(s, "#,##0")
End Sub

Serge


"gee-dee-" a écrit dans le message de news:
#jyBDo#
Bonsoir Serge
la réponse est 4562 façons différentes
(il me semble que la solution avait été donnée trés rapidement, malgré
l'énoncé erroné de 500$ )
;-)))) moi j'avais éxplosé ma feuille de calcul .

mais si l'on oblige l'utilisation d'au moins un billet ou pièce de chaque
valeur
le nombre de façon chute à : 15
@+

"garnote" a écrit dans le message de
news:GWjRa.47566$
Non seulement je n'ai pas répondu, (maudites vacances !)
mais il fallait lire :
De combien de façons différentes peut-on obtenir
100$ (et non pas 500$) en utilisant des billets
de 5$, 10$, 20$, et 50$ et des pièces de 1$ et 2$ ?

Serge


"Daniel.M" a écrit dans le message de news:
#
Pas de challenge pour moi, cet été !


Ouais, il est vraiment en vacances, notre Serge. Il ne répond guère
plus



à
ceux qui répondent à tes challenges (i.e. Une Colle VBA) ...

Salutations quand même ;-)

Daniel M.
















Avatar
Daniel.M
Bonsoir,

la réponse est 4562 façons différentes
(il me semble que la solution avait été donnée trés rapidement, malgré
l'énoncé erroné de 500$ )


Par qui? Et où est la solution complète -- pas juste le chiffre --car je
l'ai manquée (hyperlien sur google SVP) ?

Je me souviens que le serveur MS faisait des siennes durant cette période.

Salutations,

Daniel M.

Avatar
garnote
Si tu voyais le raisonnement qui y mène, tu ferais comme moi,
tu remettrais ça aux calendes grecques !!!

;-)))

Serge




"Jean-François Aubert" <à a écrit dans le message de
news:
.....ne suis pas sûr que d'ici à Noël me suffira à comprendre cette
formule.....


--
Amicalement

Jean-François Aubert
{Vaudois de la Côte Lémanique}


"garnote" a écrit dans le message de
news:NxkRa.47569$
J'ai retrouvé ma solution qui donne bien 4 562 :

Sub Changer_100()
Dim n As Integer, s As Integer
For n = 0 To 10
s = s + Round((10 * n + 4) ^ 2 / 20) * Round((14 - n) ^ 2 / 20)
Next n
MsgBox Format(s, "#,##0")
End Sub

Serge


"gee-dee-" a écrit dans le message de news:
#jyBDo#
Bonsoir Serge
la réponse est 4562 façons différentes
(il me semble que la solution avait été donnée trés rapidement,
malgré



l'énoncé erroné de 500$ )
;-)))) moi j'avais éxplosé ma feuille de calcul .

mais si l'on oblige l'utilisation d'au moins un billet ou pièce de
chaque



valeur
le nombre de façon chute à : 15
@+

"garnote" a écrit dans le message de
news:GWjRa.47566$
Non seulement je n'ai pas répondu, (maudites vacances !)
mais il fallait lire :
De combien de façons différentes peut-on obtenir
100$ (et non pas 500$) en utilisant des billets
de 5$, 10$, 20$, et 50$ et des pièces de 1$ et 2$ ?

Serge


"Daniel.M" a écrit dans le message de
news:




#
Pas de challenge pour moi, cet été !


Ouais, il est vraiment en vacances, notre Serge. Il ne répond
guère





plus
à
ceux qui répondent à tes challenges (i.e. Une Colle VBA) ...

Salutations quand même ;-)

Daniel M.




















Avatar
Daniel.M
Merci Serge,

1-Donc, il n'y avait pas de solution (code) publiée sur MPFE.

2-Je comprends de ta réponse à Jean-François que tu n'as pas encore de
solution généralisable à d'autres entiers. Le raisonnement
sousjacent à ton code serait particulier pour 100. Est-ce exact?

Salutations,

Daniel M.


J'ai reçu en bal perso, le 9 juillet, cette macro d'Alexandre Côté :



Avatar
Daniel.M
Oui Jean-François,

Pour l'autre (somme/soustraction des nombres avec 1 jusqu'à 9), elle est
encore sur Google (recherche sur "Devinette numérique").

Pour celle-ci, Serge vient de publier celle qu'il avait et celle d'Alexandre
(2 solutions).

Salutations,

Daniel M.

"Jean-François Aubert" <à wrote in message
news:3f16013f$
Daniel, Serge,

Si, si, je crois qu'il y avait une solution publiée sur le forum.
Ou en tout cas pour l'autre colle VBA de Serge, celle
de l'utilisation des nombres de 1 à 89 ou 99 additionné ou soustrait
pour arrivé à une somme de 100.
Il vrai que plusieurs messages de cette période ont disparu corps et âmes,
et je n'ai malheureusement pas gardé ces codes.....

--
Amicalement

Jean-François Aubert
{Vaudois de la Côte Lémanique}


"Daniel.M" a écrit dans le message de
news:O3VqR0$
Merci Serge,

1-Donc, il n'y avait pas de solution (code) publiée sur MPFE.

2-Je comprends de ta réponse à Jean-François que tu n'as pas encore de
solution généralisable à d'autres entiers. Le raisonnement
sousjacent à ton code serait particulier pour 100. Est-ce exact?

Salutations,

Daniel M.


J'ai reçu en bal perso, le 9 juillet, cette macro d'Alexandre Côté :










Avatar
Daniel.M
Salut Serge,

Ce sont des délires combinatoires qui mènent à ce résultat.


En espérant que mon code te soit plus 'parlant'. ;-))
C'est relativement court (<10 lignes) à cause de la solution récursive.

Ça vaut pour les entiers (par juste 100): Tu changes le premier argument à
NCombine.

' ****************
' Daniel M. Juillet 2003
Dim Billets As Variant

Sub Test_NCombine()
Billets = Array(1, 2, 5, 10, 20, 50)
MsgBox NCombine(100, 6) ' 6 = nombre d'éléments dans Billets
End Sub


Public Function NCombine(ByVal n%, ByVal panier%) As Long
Dim i%
If panier <= 2 Then
If panier = 2 Then NCombine = Int(n / Billets(1)) + 1&
Exit Function
End If

For i = Int(n / Billets(panier - 1)) To 0 Step -1
NCombine = NCombine + NCombine(n - i * Billets(panier-1), panier-1)
Next i
End Function
' ****************

Salutations,

Daniel M.

Avatar
isabelle
salut Serge,

Ce sont des délires combinatoires qui mènent à ce résultat.


on dirait bien que c'est de l'algèbre de Boole

isabelle

Avatar
JièL Goubert
Bonjour Isabelle de la geolière

on dirait bien que c'est de l'algèbre de Boole


Ouais, c'est un truc qui fout les booles ça ;-))))))

--
JièL Boules et cochonnet

1 2 3