itération des formules lors insertions lignes

C

CoucouClehibou

Guest
Bonjour à tous!
merci beaucoup pour ce site ou j'apprends plein de chose, voilà j'aideux pssiblité pour résoudre mon pb

1°) est il possible que les formules ne soient pas décallées quand j'insére une ou des lignes par exemple
=$a$2
aprés l'insertion d'une ligne devient
=$a$3 et cela c'est bof j'aimerai que cela reste =$a$2

2°) est il possible d'enregistrer une somme conditionnel dans une macro?
si oui quel est la ligne de command ou le code a inserer dans cette macro


Car la voie de la connaissance est un long chemin et que pour certain il est plus long que d'autre
Merci
 
Y

Yolène

Guest
Bonsoir,

Pour ne plus avoir ce problème il faut retirer le caractère $. Le dollar empêche que la formule soit relative.
si tu met un dollar devant la lettre de la colonne, l'adresse de la colonne reste fixe, si c'est devant le numéro de ligne c'est l'adresse de la ligne qui reste fixe.
Si tu veux faire des recopies de formule vers le bas dans différentes colonne mais que tu te refère par exemple à la première colonne tu peux écrire ta formule ainsi : = $A1
en colonne B1, en colonne C1, en colonne D1 tu mets une formule qui se réfère toujours à la colonne = $A1. pour les lignes c'est la même chose. Si tu veux recopier des formules sans adresse fixe tu retire les dollars.

Le mieux c'est de faire des essais pour comprendre le processus
Bonne soirée.
 
Y

Yolène

Guest
pour ta 2ème réponse, pas assez d'explications. Cela des conditions et de la zone de recherche

tu peux utiliser la boucle par exemple

if (condition) then

effectuer l'opération

else

opération différente

end if

mais il en existent d'autres selon le problème à traiter
 
J

Jean-Marie

Guest
Bonsoir

Je n'ai pas compris la même chose Yolène , et le passage en absolue ou en relatif ne supprime pas le décalage de la référence lors d'une insertion ou suppression de cellules.
Tu dois passer la référence de cellule en mode et utiliser la fonction Indirect
=INDIRECT("A2") ou =INDIRECT("Feuille!A2) ou =INDIRECT("'Feuille composée'!A2"), ou =INDIRECT("'[Classeur]Feuille composée'!A2") ou INDRECT(L2C1;faux) ....

Le fichier doit être ouvert, la fonction indirect n'ouvrant pas le fichier lié.

Regarde du côté de l'instruction VBA SUMIF.

@+Jean-Marie
 
C

CoucouClehibou

Guest
bonjour,
et merci pour le pour le soutiens que vous m'avez accorder, je pense que la fonction indirect va bien mettre utile sinon j'essairai a partir des boucles que Yolène m'a proposé encore merci pour votre précieuse aide!

Tchao
 
C

CoucouClehibou

Guest
Merci pour la fonction indirect me cela ne fonctionne pas; il ne reste plus qu'a essayer avec les boucles if etc... mais si quelqu'un a une autre idée je suis preneur car j'ai environ 800 cellules qui contiennent une formules du genre:

=somme(('Récapitulatif justifiés'!$D$2:$BO$2=$A4)*(MOIS('Récapitulatif justifiés'!$A$3:$A$542)=MOIS(D$3))*('Récapitulatif justifiés'!$C$3:$C$542="Absences")*(('Récapitulatif justifiés'!$D$3:$D$542)>=1)*(('Récapitulatif justifiés'!$F$3:$F$542)>=1)*1)

en somme conditionnelle biensur

vous trouverez ci joint les deux feuilles qui me posent problémes en bref:
je fais la saisie des absences d'une classe en fin de semaine le rsponsable de formation rentre les justificatifs (certificat médial, etc...) ceci à pour conséquence d'insérer dans la feuille récapitulatif des absences un tableaux récapitulant les absences et le code du justificatif.
Dans une autre feuille j'aimerai comptabiliser les absences par élèves, par mois, et par justifié ou non


En bref vous l'aurrez compris une vraie usine à gaz et cela fait des semaines que j'essaie de faire tourner ce truc.

D'avance merci pour tout
 

Pièces jointes

  • absences.zip
    36.5 KB · Affichages: 32
  • absences.zip
    36.5 KB · Affichages: 26
  • absences.zip
    36.5 KB · Affichages: 25

Discussions similaires

Réponses
3
Affichages
375
Réponses
2
Affichages
215

Statistiques des forums

Discussions
313 020
Messages
2 094 435
Membres
106 027
dernier inscrit
DonSparks