VBA Retour à la ligne, mais dans cellule du dessous.

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Arpette

XLDnaute Impliqué
Bonsoir à toutes et à tous,
j'aimerais savoir si il est possible de faire un retour à la ligne sans passer par "format de cellule renvoyer à la ligne automatiquement" car ce format augmente l'hauteur de ligne et je dois garder le même nombre de ligne en raison de ma ma macro.
Ce que je souhaite, si j'écris dans la cellule B1, quand j'arrive en fin de B1 je continue à écrire mais en B2 etc..
Peut-être avec un codeVB
Merci de votre aide
@+
 
Re : VBA Retour à la ligne, mais dans cellule du dessous.

Bonjour a tous et merci pour tous ces exemples forts intéressants. La solution de Roger est celle qui se rapproche le plus de mon problème. Sauf que moi je reste sur la même feuille et uniquement su le colonne B. J'aimerais que la découpe ce fasse de manière évenementielle et non par un bouton quand j'arrive à +20 caractères. Le top serait d'aller à la cellule du dessous quand on atteind la largeur de la colonne.
Merci de votre aide.
@+
 
Dernière édition:
Re : VBA Retour à la ligne, mais dans cellule du dessous.

Pardon Banzai, je n'avais pas vu ta réponse en début de feuille2. Ce que tu penses et as écrit correspond à ce que je souhaite, mais ça ne fonctionne pas. J'ai peut-être loupé quelque chose.
Merci pour ton aideµ.
@+
 
Re : VBA Retour à la ligne, mais dans cellule du dessous.

Bonjour Hippolite, merci de ta réponse, mais ces liens mon été donnés plus haut, mais sans succès. J'essaie d'y arriver avec une compilation de tous ces posts, mais c'est pas facile, mais je reste persuadé que c'est possible et espère bien arriver à mes fins.
Merci de ton aide.
@+
 
Re : VBA Retour à la ligne, mais dans cellule du dessous.

Re…
(…)
J'aimerais que la découpe ce fasse de manière évenementielle et non par un bouton quand j'arrive à +20 caractères. Le top serait d'aller à la cellule du dessous quand on atteind la largeur de la colonne.
(…)
Personnellement, je ne sais pas faire ça…​
ROGER2327
#4991


Mercredi 4 Pédale 138 (Saint Michet, Idéaliste, SQ)
8 Ventôse An CCXIX
2011-W08-6T14:42:11Z
 
Re : VBA Retour à la ligne, mais dans cellule du dessous.

Re,
(…)
J'aimerais que la découpe ce fasse de manière évenementielle et non par un bouton quand j'arrive à +20 caractères. Le top serait d'aller à la cellule du dessous quand on atteind la largeur de la colonne.
(…)
Je pense qu'on pourrait avec
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 
Re : VBA Retour à la ligne, mais dans cellule du dessous.

Re 🙂,
Je pense qu'on pourrait avec
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
C'est ce que Banzaï a fait, mais notre ami souhaiterait que ce soit pendant la frappe du texte que le changement de cellule se fasse 😛... Et là, il nous faudrait un événement KeyPress pour surveiller la saisie dans la cellule, ce qui, à priori, n'existe pas 🙄...
Eventuellement, si ça convenait à notre ami, il serait possible de saisir dans un USF qui à chaque dépassement de cellule remplirait la cellule, puis passerait à la ligne suivante 😉...
Qu'il fasse signe si ça l'intérresse 😛.
Bonne soirée 😎
 
Re : VBA Retour à la ligne, mais dans cellule du dessous.

Bonjour Staple, ci-joint le fichier. Je renseigne la feuille fournisseurs pour une référence qui peut avoir plusieurs lignes, je choisis dans la feuille Devis ex: IRP, ma mise en page n'est plus bonne.
Merci de ton aide.
@+
Cijoint.fr - Service gratuit de dépôt de fichiers
 
Re : VBA Retour à la ligne, mais dans cellule du dessous.

bonjour à tous,
j'ai eu un peu le même pb à résoudre pour ne pas chambouler la mise en page en fonction des valeurs de cellule sur 1 ou 2 ou 3 lignes...
Pour l'impression, j'ai utilisé =

Code:
Dim Ligne As Long
Dim DerLigne As Long
Dim h As Long
Dim k As Long

'===Valider la zone concernée
h = 0
DerLigne = Range("B23").End(xlUp).Row + 1 'à adapter
For Ligne = 13 To 23 'à adapter
    Rows(Ligne).EntireRow.AutoFit
'===Calcul de la hauteur des lignes (bloqué à 138 pour l'impression)
    If Ligne >= DerLigne And h > 138 Then
        rep = MsgBox("Masquer après la ligne" & vbCr & Ligne - 1, _
            vbYesNo + vbExclamation, "Masquage")
        If rep = vbYes Then
            For k = 23 To Ligne Step -1
                Rows(k).Hidden = True
            Next
            Exit Sub
        End If
        Exit Sub
    End If
h = h + Cells(Ligne, 1).Height
Next

End Sub
ça modifie le nb de ligne pour garder la même mise en page à l'impression
voilà, c'est assez simple
à +
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
256
Réponses
43
Affichages
813
Retour