Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

RESOLU - Code VBA pour copié

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 !

Ternoise

XLDnaute Occasionnel
Bonsoir

Quelle est le code VBA qui permet de copié la valeur d'une cellule nommée 'Nom" vers une autre feuille dans la colonne A à partir de la 3ème ligne, si elle est vide, sinon en dessous.

Merci de votre aide

David
 
Dernière édition:
Re : Code VBA pour copié

Bonjour, Ternoise, le Forum,

Peut-être ainsi :

Code:
Option Explicit
Sub Valeur_copier_là_si()
    If Sheets("Feuil2").Range("A3").Value = "" Then
        Sheets("Feuil1").Range("Nom").Copy Destination:=Sheets("Feuil2").Range("A3")
    Else
        Sheets("Feuil1").Range("Nom").Copy Destination:=Sheets("Feuil2").Range("a65536").End(xlUp)(2)
    End If
End Sub

A bientôt 🙂
 
Re : Code VBA pour copié

Bonsoir et merci

Mais erreur "L'indice n'appartient pas à la sélection" sur If Sheets("Feuil2").Range("A3").Value = "" Then

En fait, j'ai déjà posté exactement ce que j'aimerais mais sans réponse, je post en plus simple et je vais essayer d'adapter !

Merci de votre aide
 
Re : Code VBA pour copié

Bonjour et merci

Toutefois, étant donné que la cellule de destination est fusionnée, cela ne fonctionne pas.
Autre problème, après essai sans le fusionnement, cela copie la cellule. J'aimerais juste la valeur de la cellule car celle-ci comporte un format et une formule.

Merci de l'aide
 
Re : Code VBA pour copié

Re-bonjour,

... étant donné que la cellule de destination est fusionnée, cela ne fonctionne pas...

Mieux vaut choisir l'option "Centré sur plusieurs colonnes".


... J'aimerais juste la valeur de la cellule car celle-ci comporte un format et une formule...

Un nouveau code :

Code:
Option Explicit
Sub Valeur_copier_là_si_V_02()
    If Sheets("Feuil2").Range("A3").Value = "" Then
        Sheets("Feuil2").Range("A3") = Sheets("Feuil1").Range("Nom")
    Else
        Sheets("Feuil2").Range("a65536").End(xlUp)(2) = Sheets("Feuil1").Range("Nom")
    End If
End Sub

Si le résultat ne correspond pas à l'attente et pour éviter de tourner en rond, merci de bien vouloir fournir le fichier de travail, dépourvu de donnée confidentielle.

A bientôt 🙂
 
Re : Code VBA pour copié

Bonsoir et merci de la réponse.

Cela fonctionne beaucoup mieux.

Malgré tout et au fur et à mesure de la construction du projet, je constate quelques erreurs.

A savoir que la copie doit se faire ligne par ligne

Je joint un exemple de mon projet avec les explications dessus.

Merci de l'aide

David
 

Pièces jointes

- 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

  • Question Question
Microsoft 365 Combobox
Réponses
6
Affichages
305
Réponses
2
Affichages
467
Réponses
3
Affichages
256
Réponses
5
Affichages
665
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…