[Déplacé de .Net --> VBA] SendKeys "^;"

Résolu
pilounet54 Messages postés 20 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 2 octobre 2009 - 13 juil. 2009 à 15:52
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 15 juil. 2009 à 10:34
Const plage_depart = "essais"
Const feuille = "Feuil3"
Dim val1 As Variant


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  For Each C In Worksheets(feuille).Range(plage_depart)
       
        ligne = C.Row
        Colonne = C.Column
                     
        val1 = C.Value
      
    If val1 <> "" Then
           
           
         Cells(ligne, Colonne - 1).Select
           
         Application.SendKeys "^;"
            
    End If
  Next
End Sub
 bonjour à tous pourquoi cela fontionne pas
 je souhaite mettre SendKeys "^;" lorsque dans la plage "essais" il rencontre une cellule non vide dans une colonne de moins  il mets cette valeur  sinon  rien

 En remplacement de la formule =si (test_logique;SendKeys "^;";"") pour exemple merci à tous

7 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
13 juil. 2009 à 19:48
Salut
Et ce SendKeys sert à quoi ?
Il doit bien y avoir une fonction plus précise et sérieuse que d'envoyer des caractères de controle, non ?
Eventuellement, ajoute un DoEvents juste avant le SendKeys + ajoute     , True    au SendKeys

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
pilounet54 Messages postés 20 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 2 octobre 2009
13 juil. 2009 à 20:30
ça me permet de mettre la date dans la cellule de la meme ligne mais colonne- 1 mais avec l'avantage à ce que cette date n'est pas mis a jour à l'ouverture du fichier comme =aujoud'hui()
et le tout automatique merci pour ta reponse
je vais essayer
merci encore
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
13 juil. 2009 à 23:59
Mieux vaudrait simplement faire un
   Cells(ligne, Colonne).Offset(-1, 0).Value = Now
Il n'insère que la valeur de Now, pas la formule.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
14 juil. 2009 à 00:01
ou Offset(0, -1)
A vérifier dans l'aide
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pilounet54 Messages postés 20 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 2 octobre 2009
14 juil. 2009 à 15:28
Private Sub CommandButton1_Click()

For Each C In Worksheets(feuille).Range(plage_depart)

ligne = C.Row
Colonne = C.Column

val1 = C.Value

If val1 = "" Then
Cells(ligne, Colonne - 1).Value = ""

End If
If val1 <> "" And Cells(ligne, Colonne - 1) = "" Then


Cells(ligne, Colonne - 1).Select
Cells(ligne, Colonne - 1).Value = Now

End If

If val1 <> "" And Cells(ligne, Colonne - 1) <> "" Then

End If

Next


résolu " merci a vous " @ bientôt
0
pilounet54 Messages postés 20 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 2 octobre 2009
14 juil. 2009 à 18:06
résolu " merci a vous " @ bientôt

merci jack
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
15 juil. 2009 à 10:34
De rien.
C'était dans la série "Dis moi ce qui te tracasse et je te dirais comment t'en passer"
0
Rejoignez-nous