Aide vba

Résolu
Bonjour,
voila, je cherche une fonction qui me permettrait en gros demettre cette condition:
si la formule de la cellule commence par getctdat( , alors....

mais jene sais pas comment traduire la condition en vba...

merci
Configuration: Windows XP
Internet Explorer 6.0

10 réponses

  1. Ben chez moi ça marche...C'est pas un pb de casse avec les GetCtDat...? De toute façon si l'autre script fonctionne, ça roule :-)
    1. j'ai fait cette formule, d83 est une ceulle concernée par cette formule, et ça met sorry.......

      Sub test()
      Range("d83").Select

      If Right(Left(ActiveCell.Formula, 9), 8) = "GetCtData" Then
      MsgBox "ok"
      Else
      MsgBox "sorry"
      End If

      End Sub
      1. tu peux essayer ça... tiens moi o courant, mci

        Private Sub CommandButton1_Click()

        If Range("a1").Formula = "=36*6" Then
        'pour tester si la formule marche
        MsgBox "OK"
        Range("nom_de_cellule").Select
        'selectionne la cellule qui correspond à ton critère
        Selection.Copy
        'et finalement colle unique les valeurs dans les cellules de destination (en occurence la cellule de départ
        Range("nom_de_la_cellule_où_tu_veux_copier_la_valeur_uniquement").Select
        Selection.PasteSpecial Paste:=xlPasteValues
        Else
        MsgBox "IL YA UN PROBLEME"
        End If

        End Sub
        1. Si tu veux verifier que le debut de la formule (sans le signe =) est egal à "getctdat" sans distinction de ce qu'il y a derrière, utilise Left et Right pour extraire le morceau dela chaine sur lequel tu veux faire la comparaison...

          If Right(Left(ActiveCell.Formula, 9), 8) = "getctdat" Then
          MsgBox "c'est OK"
          End If

          :-)
          1. Je veux que toutes les cellules dont la formule commence par getctat( quelques soient les arguments de cette fonction soient copiés et collés en valeurs

            je sais pas si c'est beaucoup plus clair... :S
            1. je ne comprends pas la question maintenant...
              Quel est le but de ce que tu veux faire, nous pourrions y voir plus clair peut-être

              A ploutch`
              1. bah ça marche pas.

                en fait, si je reformule ma question, je voudrais savoir quel caractete remplace une chaine de caractere
                1. tu peux essayer (je connais que le VBA, mais pas le VB, je sais pas si cela va t'aider):

                  If worksheets("nom_de_ta_feuille).range("nom_ou_coordonnées_de_ta_cellule").Formula="getctdat(..." Then
                  ...
                  ...
                  Else
                  ...
                  End If

                  bne journée :)