Macro pour changer de cellule si déjà occupée.
Fermé
Ana
-
Modifié par Ana le 3/09/2014 à 15:43
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 - 3 sept. 2014 à 17:59
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 - 3 sept. 2014 à 17:59
A voir également:
- Macro pour changer de cellule si déjà occupée.
- Changer dns - Guide
- Excel cellule couleur si condition texte - Guide
- Macro word - Guide
- Changer clavier qwerty en azerty - Guide
- Excel si cellule contient partie texte ✓ - Forum Excel
3 réponses
eriiic
Messages postés
24601
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
25 novembre 2024
7 243
Modifié par eriiic le 3/09/2014 à 16:25
Modifié par eriiic le 3/09/2014 à 16:25
Bonjour,
autre proposition :
S'assure que la saisie est bien un nombre et le colle sous la dernière ligne occupée de B.
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
autre proposition :
Sub montantHT() Dim derlig As Long With Worksheets("Feuil1") derlig = .Cells(Rows.Count, "B").End(xlUp).Row .Cells(derlig + 1, "B") = Application.InputBox("Saisissez le CA HT du mois en cours : ", Type:=1) End With End Sub
S'assure que la saisie est bien un nombre et le colle sous la dernière ligne occupée de B.
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Normad
Messages postés
112
Date d'inscription
dimanche 6 juin 2010
Statut
Membre
Dernière intervention
10 juin 2015
39
3 sept. 2014 à 16:05
3 sept. 2014 à 16:05
Bonjour,
Alors le With peut être utile, mais là il n'est pas utilisé dans les lignes qui suivent (il faut un point un début de ligne lorsqu'on fait référence au With pour éviter de repréciser). Pour la déclaration de vahlt, c'est mieux de passer en Long qu'en Integer, sinon un Chiffre d'affaire de 50'000 génèrera une erreur.
Voilà le code corrigé en partant de l'idée qu'on remplira la cellule vide à partir de B36 en descendant chaque fois d'une ligne.
Alors le With peut être utile, mais là il n'est pas utilisé dans les lignes qui suivent (il faut un point un début de ligne lorsqu'on fait référence au With pour éviter de repréciser). Pour la déclaration de vahlt, c'est mieux de passer en Long qu'en Integer, sinon un Chiffre d'affaire de 50'000 génèrera une erreur.
Voilà le code corrigé en partant de l'idée qu'on remplira la cellule vide à partir de B36 en descendant chaque fois d'une ligne.
Sub montantHT()
Dim valht As Long, Ligne As Long, Test As String
Ligne = 36
With ThisWorkbook.Worksheets("Analyse MS & CA")
Test = .Range("B" & Ligne).Value
While Test <> ""
Ligne = Ligne + 1
Test = .Range("B" & Ligne).Value
Wend
valht = InputBox("Saisissez le CA HT du mois en cours : ")
.Range("B" & Ligne).Value = valht
End With
End Sub
J'étais 'un petit peu' loin effectivement... mais maintenant j'ai compris, même si quelques termes restent encore obscurs.
Merci beaucoup à vous deux ! Après avoir terminé mes écritures comptables, j'ai passé l'après-midi dessus !!! *pleure de joie*
Encore merci et en vous souhaitant une agréable fin d'après-midi !
Anaïs
Merci beaucoup à vous deux ! Après avoir terminé mes écritures comptables, j'ai passé l'après-midi dessus !!! *pleure de joie*
Encore merci et en vous souhaitant une agréable fin d'après-midi !
Anaïs
3 sept. 2014 à 16:34
1) La feuille "Feuil1" ne correspond pas au nom donné par Ana
2) la première cellule vide entre B1 et B35 sera utilisée alors qu'elle veut démarrer à B36
Par contre, bien vu pour le , Type:=1 dans le InputBox qui contrôle qu'on a bien un nombre tapé dans l'InputBox .
Dans ma solution, j'essayé de corrigé la Macro donnée sans la refaire complètement et en respectant sa logique...
3 sept. 2014 à 17:59
C'est un exemple, Je suppose donc qu'elle veut ajouter en-dessous de la dernière utilisée.