A voir également:
- Un seul caractère par cellule Excel.
- Caractère ascii - Guide
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne dans une cellule excel - Guide
- Liste déroulante excel - Guide
- Verrouiller cellule excel - Guide
8 réponses
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
7 oct. 2007 à 12:31
7 oct. 2007 à 12:31
Bonjour,
si B1= "BOB"
ch=[B1].value
for i = 1 to len(ch)
[A1].offset(i-1).value = mid(ch,i,1)
next i
eric
si B1= "BOB"
ch=[B1].value
for i = 1 to len(ch)
[A1].offset(i-1).value = mid(ch,i,1)
next i
eric
Bonjour Eric,
Merci pour ta réponse. Ta solution fonctionne si le texte est connu par avance. Dans mon cas, le texte est composé à la saisie, c'est l'action d'une touche du clavier dans une cellule qui doit permettre d'envoyer le focus dans une cellule adjacente, ainsi de suite. Je sais, ardu, mais je cherche.
Merci pour ta réponse. Ta solution fonctionne si le texte est connu par avance. Dans mon cas, le texte est composé à la saisie, c'est l'action d'une touche du clavier dans une cellule qui doit permettre d'envoyer le focus dans une cellule adjacente, ainsi de suite. Je sais, ardu, mais je cherche.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
7 oct. 2007 à 23:38
7 oct. 2007 à 23:38
Ben fais enter après chaque caractère :-) en cochant ce qui va bien dans options / Modifications / Déplacer la sélzction après la modification
ou si tu veux te compliquer utilise l'evenement Change du Worksheet
eric
ou si tu veux te compliquer utilise l'evenement Change du Worksheet
eric
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 418
8 oct. 2007 à 05:40
8 oct. 2007 à 05:40
Bonjour Eric, bonne journée
Petit info complémentaire pour la rentrée successive en ligne plutot qu'en colonne sur excel:
au lieu de décocher la fonction déplacer...., il suffit pour limiter les entrées à une zone, de la sélectionner entière. Excel déplacera alors le curseur dans le champ seulement, d'abord en colonne et remontera , arrivé en bas du champ, à la colonne suivante.
Si votre champ n'a qu'un ligne, excel se déplace à l'horizontal sur toute la sélection (et attention,tourne en boucle dans le champ!!)
Bien cordialement
Petit info complémentaire pour la rentrée successive en ligne plutot qu'en colonne sur excel:
au lieu de décocher la fonction déplacer...., il suffit pour limiter les entrées à une zone, de la sélectionner entière. Excel déplacera alors le curseur dans le champ seulement, d'abord en colonne et remontera , arrivé en bas du champ, à la colonne suivante.
Si votre champ n'a qu'un ligne, excel se déplace à l'horizontal sur toute la sélection (et attention,tourne en boucle dans le champ!!)
Bien cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
8 oct. 2007 à 07:06
8 oct. 2007 à 07:06
Bonjour Vaucluse,
Merci de ce complément quand on veut remplir une zone, c'est vrai qu'on n'y pense pas toujours et que c'est bien utile.
Mais en tout état de cause excel remplira en colonne si "bas" est choisi dans "Déplacer la sélzction après la modification", et en ligne si "droite" est sélectionné.
Bonne journée à toi aussi
eric
Merci de ce complément quand on veut remplir une zone, c'est vrai qu'on n'y pense pas toujours et que c'est bien utile.
Mais en tout état de cause excel remplira en colonne si "bas" est choisi dans "Déplacer la sélzction après la modification", et en ligne si "droite" est sélectionné.
Bonne journée à toi aussi
eric
Bonjour Éric,
J'ai testé la fonction Change du Worksheet :
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveCell.Offset(-1, 1).Select
End Sub
Ça marche mais problème : Comment intégrer l'action de la touche ENTREE dans cette fonction ?
J'ai testé la fonction Change du Worksheet :
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveCell.Offset(-1, 1).Select
End Sub
Ça marche mais problème : Comment intégrer l'action de la touche ENTREE dans cette fonction ?
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
10 oct. 2007 à 17:18
10 oct. 2007 à 17:18
Bonjour Cayman,
Heuuu, je ne vois pas trop où tu veux en venir...
Si tu utilises l'evenement change c'est que c'est celui-ci qui t'interesse et l'argument à utiliser est target qui est l'adresse de la cellule ayant changé (en te mefiant qu'il n'est déclenché que si saisie utilisateur. Ta cellule d'à coté qui aurait une formule recalculée ne le déclenche pas).
La 1ere chose à faire est de lire quelle cellule (avec target.address) est modifiée et voir si elle fait partie de la plage où tu désires intervenir. (avec intersect(...,...,...) par exemple)
Cet evenement est déclenché à la fin de ta saisie après l'appui sur enter.
A lire ton code tu saisis qcq chose dans une cellule, excel déplace ta sélection en fonction des options que tu as choisi (à-priori déplacement vers le bas), que tu modifies avec ton programme en 1 ligne +haut et 1 colonne à droite. Ce qui t'amene à la cellule à droite de ta saisie (chose que tu peux faire juste en modifiant les options).
A mon avis tu voulais faire autre chose mais quoi je l'ignore
eric
Heuuu, je ne vois pas trop où tu veux en venir...
Si tu utilises l'evenement change c'est que c'est celui-ci qui t'interesse et l'argument à utiliser est target qui est l'adresse de la cellule ayant changé (en te mefiant qu'il n'est déclenché que si saisie utilisateur. Ta cellule d'à coté qui aurait une formule recalculée ne le déclenche pas).
La 1ere chose à faire est de lire quelle cellule (avec target.address) est modifiée et voir si elle fait partie de la plage où tu désires intervenir. (avec intersect(...,...,...) par exemple)
Cet evenement est déclenché à la fin de ta saisie après l'appui sur enter.
A lire ton code tu saisis qcq chose dans une cellule, excel déplace ta sélection en fonction des options que tu as choisi (à-priori déplacement vers le bas), que tu modifies avec ton programme en 1 ligne +haut et 1 colonne à droite. Ce qui t'amene à la cellule à droite de ta saisie (chose que tu peux faire juste en modifiant les options).
A mon avis tu voulais faire autre chose mais quoi je l'ignore
eric
Salut
Comment intégrer l'action de la touche ENTREE dans une fonction ?
Ou comment simuler l'appui de la touche ENTREE ?
Solution en plus de l'intégration de la fonction CHR(13) + CHR(10) ; (retour chariot plus saut de ligne) :
Regardes, s'il te plaît de le faire, là, "CaymanS" du Post #6 :
Par moi-même, le vendredi 21 septembre 2007 à 00h22:41 ; Post #5 :
https://forums.commentcamarche.net/forum/affich-3620439-code-du-bouton-imprimer#5
Par moi-même, le mercredi 26 septembre 2007 à 02h34:33 ; Post #3 :
https://forums.commentcamarche.net/forum/affich-3649534-programmer-le-passage-en-majuscules#3
http://users.skynet.be/micdub/vba6.htm <<== SOURCE DE TOUT OU PRESQUE !!
Sub test_touche_ENTREE_a1()
Application.SendKeys "{ENTER}" 'ou "~"
End Sub
merci .
à+
Comment intégrer l'action de la touche ENTREE dans une fonction ?
Ou comment simuler l'appui de la touche ENTREE ?
Solution en plus de l'intégration de la fonction CHR(13) + CHR(10) ; (retour chariot plus saut de ligne) :
Regardes, s'il te plaît de le faire, là, "CaymanS" du Post #6 :
Par moi-même, le vendredi 21 septembre 2007 à 00h22:41 ; Post #5 :
https://forums.commentcamarche.net/forum/affich-3620439-code-du-bouton-imprimer#5
Par moi-même, le mercredi 26 septembre 2007 à 02h34:33 ; Post #3 :
https://forums.commentcamarche.net/forum/affich-3649534-programmer-le-passage-en-majuscules#3
http://users.skynet.be/micdub/vba6.htm <<== SOURCE DE TOUT OU PRESQUE !!
Sub test_touche_ENTREE_a1()
Application.SendKeys "{ENTER}" 'ou "~"
End Sub
merci .
à+