Trouve pas la bonne formule pour mon calcul

Bonjour,
je voudrais trouver la formule qui puisse me permettre de récupérer automatiquement la dernière cellule remplie dans une colonne et de pouvoir l insérer dans une formule de calcul je vous donne un exemple

le case G3 est la dernière remplie dans la colonne car les cases G4,G5 et G6 sont vides

en G7 j ai mis la formule suivante :

=SI(H7="";"";Si(H7="OUI";G6-E7+F7;SI(H7="NON";????­???-E7+F7;"")))

j ai remplacer le texte que je cherche par des ? car j' ai mis G3 en dernière case remplie mais celle-ci peut être soit G2,G4,G5 ou G6

en vous remerciant d avances

cordial amitié
Configuration: Windows XP
Firefox 2.0.0.14

3 réponses

  1. J'imagine que tu es sur excel ^^

    en macro commande tu ne peux pas y arriver, par contre en VBA oui
    tu dois te servir de l'editeur Visual basic et d'une boucle

    par exemple
    j'ai testé sur excel ça marche ^^

    le pointeur parcourt la colonne 1 de haut en bas jusqu'a ce qu'il rencontre la valeur 7

    lorsqu'il trouve la valeur 7 il affiche son numéro de ligne
    s'il ne trouve pas la valeur 7 il annonce la valeur 100

    il faut mettre la valeur 7 quelque part entre la ligne 1 et 100 sinon le programme n'a pas d'interet

    ligne = 1
    Do While (ligne < 100) And (Cells(ligne, 1).Value <> "7")
    ligne = ligne + 1
    Loop
    MsgBox (ligne)

    cette boucle comporte 2 condition de sortie

    si il trouve la valeur 7 , on sort de la boucle
    si il atteint la valeur 100 on sort de la boucle . cette condition est necessaire car s'il ne trouve pas de valeur 7, on part dans une boucle infinie

    Oubliez Internet explorer 6,7,8 et essayez donc Firefox 3.0, vous oublierez IE. 
    0
    1. si tu souhaites repérer ou se trouve la valeur 7 dans un tableau de 100 lignes par 100 colonnes
      tu dois mettre une double boucle imbriqué

      exemple:
      testé dans excel

      il faut placer la valeur 7 n'importe ou dans un tableau de 100 lignes sur 100 colonnes
      il indiquera les cordonnées de chaque valeur 7 trouvé dans le tableau

      colonne = 1
      ligne = 1
      Do
      Do While (ligne < 100) And (Cells(ligne, colonne).Value <> "7")
      ligne = ligne + 1
      Loop

      If ligne = 100 Then
      ligne = 1
      Else
      MsgBox ("ligne=" & ligne & " " & "colonne=" & colonne)
      End If

      colonne = colonne + 1
      Loop While (colonne < 100) And (ligne < 100)

      End Sub

      j'ai employé

      Do ..... loop While pour parcourir les colonnes
      do while.......loop pour parcourir les lignes

      Oubliez Internet explorer 6,7,8 et essayez donc Firefox 3.0, vous oublierez IE. 
      0
      1. dans ma feuille de calcul ma colonne G contient 60 lignes dans chaque cellule j ai inséré la formule suivante

        G3=SI(H3="";"";Si(H3="OUI";G2-E3+F3;SI(H3="NON";G2-E3+F3;"")))
        G4=SI(H4="";"";Si(H4="OUI";G3-E4+F4;SI(H4="NON";G3-E4+F4;"")))
        G5=SI(H5="";"";Si(H5="OUI";G4-E5+F5;SI(H5="NON";G4-E5+F5;"")))

        quand mes cases G2 G3 G4 G5 sont pleine et que je met OUI dans les case H mon calcul se réalise correctement

        quand ma case G2 est remplies que mes cases G3 G4 sont vide est je met OUI dans case H5 pour que mon calcul se réalise cela ne fonctionne pas
        je recherche la formule qui me permettra d aller récupérer ma case G2 dans cette exemple

        G5=SI(H5="";"";Si(H5="OUI";G4-E5+F5;SI(H5="NON";(DERNIÈRE CASE REMPLIE)-E5+F5;"")))

        en mode VBA je ne comprend rien
        0