Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Récupérer les adresses de celulles

17 réponses
Avatar
Fredo(67)
Bonjour,

Dans une zone quelquonque (disons E25:E50, et uniquement sur la
colonne E) se trouvent quelques valeurs
La zone n'est pas remplie en totalit=E9, il peut y avoir des vides.

Par Exemple
E25 =3D 125
E31 =3D 12
E36 =3D 45
E40 =3D 76
toutes les autres entre E25 et E50 =3D vides

Je voudrais pouvoir r=E9cup=E9rer dans des variables, les num=E9ros de
lignes contenant des valeurs en colonne E
pour noter en F51 la formule suivante =3DE25+E31+E36+E40

Y'a t'il moyen
Sachant que le nombre de valeur n'est pas fix=E9, et peu varier de 1 =E0
50...

J'ai essay=E9 avec un truc du style Pour toutes les celulles non vides
dans la zone, mais je me heurte aux variables.

Merci

7 réponses

1 2
Avatar
Jacky
Re...

http://cjoint.com/?fDoCkauhdA
--
Salutations
JJ


"Fredo(67)" a écrit dans le message de news:

Modeste ton idée n'est pas mauvaise (vu que je l'avait aussi
effleurée) mais ne peût pas etre intégrée au tableau tel qu'il est
réellement

Jacky :
ta macro rencontre un problème

Sub jj()
For Each c In [e25:e50]
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(,
1).Address(0, 0)
& ","
Next
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
End Sub

En fait c'est la ligne x = Left(x, Len(x) - 1)
qui ne plait pas à Excel.

ne manquerait il pas une déclaration de variable ?
Si je met un dim x as integer en début de macro, ca marche, mais la
cellule contient alors la formule suivante :
=somme(0)

On 29 mai, 13:45, "Modeste" wrote:
Bonsour® Fredo(67) avec ferveur ;o))) vous nous disiez :

pour voir réellement appaitres les antécédents pris en compte dans le
total.


pourquoi ne pas utiliser la mise en forme
conditionnellehttp://cjoint.com/?fDnSZflZfX

--
--
@+
;o)))



Avatar
Fredo(67)
Soit ta macro ci après
Sub jj()
For Each c In [e25:e50]
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(,
1).Address(0, 0) & ","
Next
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
End Sub

Soit DEBUT une variable où est stockée le numéro de ligne
correspondant au début de la zone à traiter
Soit FIN une variable où est stockée le numéro de ligne correspondant
à la fin de la zone à traiter
donc zone à traiter [eDEBUT:Efin]

comment modifier ta macro pour que ca marche
Avatar
Jacky
Re...
Essaie
'----------
Sub jj()
debut = "E25"
fin = "E50"
[F60].ClearContents
For Each c In Range(debut & ":" & fin)
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(, 1).Address(0, 0)
& ","
Next
If x <> "" Then
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
End If
End Sub
'------

--
Salutations
JJ


"Fredo(67)" a écrit dans le message de news:

Soit ta macro ci après
Sub jj()
For Each c In [e25:e50]
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(,
1).Address(0, 0) & ","
Next
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
End Sub

Soit DEBUT une variable où est stockée le numéro de ligne
correspondant au début de la zone à traiter
Soit FIN une variable où est stockée le numéro de ligne correspondant
à la fin de la zone à traiter
donc zone à traiter [eDEBUT:Efin]

comment modifier ta macro pour que ca marche
Avatar
Modeste
Bonsour® Fredo(67) avec ferveur ;o))) vous nous disiez :

Soit ta macro ci après
Sub jj()
For Each c In [e25:e50]
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(,
1).Address(0, 0) & ","
Next
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
End Sub

Soit DEBUT une variable où est stockée le numéro de ligne
correspondant au début de la zone à traiter
Soit FIN une variable où est stockée le numéro de ligne correspondant
à la fin de la zone à traiter
donc zone à traiter [eDEBUT:Efin]

comment modifier ta macro pour que ca marche


Sub jj()
For Each c In Range(cells(DEBUT,5),cells(FIN,5))
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(, 1).Address(0, 0) & ","
Next
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
[F60].showprecedents
End Sub





--
--
@+
;o)))

Avatar
Fredo(67)
Bon ben après de grandes Aides de ta part
après quelques heures d'intégration

ma macro marche pafaitement

Merci à toi ( et à tous les autres aussi)
Avatar
Modeste
Bonsour® Fredo(67) avec ferveur ;o))) vous nous disiez :

Soit ta macro ci après
Sub jj()
For Each c In [e25:e50]
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(,
1).Address(0, 0) & ","
Next
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
End Sub

Soit DEBUT une variable où est stockée le numéro de ligne
correspondant au début de la zone à traiter
Soit FIN une variable où est stockée le numéro de ligne correspondant
à la fin de la zone à traiter
donc zone à traiter [eDEBUT:Efin]

comment modifier ta macro pour que ca marche


Sub jj()
For Each c In Range(cells(DEBUT,5),cells(FIN,5))
If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(, 1).Address(0, 0) & ","
Next
x = Left(x, Len(x) - 1)
[F60].Formula = "=SUM(" & x & ")"
[F60].showprecedents
End Sub





--
--
@+
;o)))

Avatar
Fredo(67)
Merci à vous tous

c'est un réel plaisir de vous exposer nos problèmes parce qu'on sait
qu'on sera aidé à trouver une solution

Cordialement

On 29 mai, 17:41, "Modeste" wrote:
Bonsour® Fredo(67)  avec ferveur  ;o))) vous nous disiez :





Soit ta macro ci après
Sub jj()
For Each c In [e25:e50]
 If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(,
1).Address(0, 0) & ","
Next
 x = Left(x, Len(x) - 1)
 [F60].Formula = "=SUM(" & x & ")"
End Sub

Soit DEBUT une variable où est stockée le numéro de ligne
correspondant au début de la zone à traiter
Soit FIN une variable où est stockée le numéro de ligne correspond ant
à la fin de la zone à traiter
donc zone à traiter [eDEBUT:Efin]

comment modifier ta macro pour que ca marche


 Sub jj()
   For Each c In Range(cells(DEBUT,5),cells(FIN,5))
     If c <> "" And c.Offset(, 1) <> "" Then x = x + c.Offset(, 1) .Address(0, 0) & ","
   Next
      x = Left(x, Len(x) - 1)
      [F60].Formula = "=SUM(" & x & ")"
      [F60].showprecedents
 End Sub

--
--
@+
;o)))- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



1 2