Aide svp : rechercher copier coller une cellule

nak

XLDnaute Occasionnel
Bonjour

j' essais d'intégrer un bouton avec la fonction suivante:
- Je veux comparer ma cellule B4 (Feuil1) à la colonne A (Feuil2)
- Si cette valeur est présente dans la feuille 2 je veux un msgbox "attention" et valider pour terminer la macro.
- Par contre si la valeur n'est pas présente alors je copie B4 (Feuil1) et je l'ajoute à ma colonne A (Feuil2)

Aujourd'hui je coince sur le début de la formule, je ne sais pas comment faire la recherche.
De plus j'ai un problème sur ma formule de copie :

Private Sub CommandButton1_Click()
Range("B4").Copy
ActiveSheet.Paste Destination:=Worksheets("Feuil2").Range("A65000").End(xlUp)
End Sub

Je demande bien de coller ma valeur sur la dernière cellule mais quand je répète l'opération une deuxième fois ma valeur est toujours coller dans la même cellule. En fait ça remplace ma dernière cellule...

Merci d'avance
Nak
 

nak

XLDnaute Occasionnel
Re : Aide svp : rechercher copier coller une cellule

Je viens de trouver la solution pour copier ma cellule dans la premiere cellule libre

Private Sub CommandButton1_Click()
Sheets("Feuil2").Range("A65536").End(xlUp).Offset(1, 0) = Sheets("Feuil1").Range("A1").Value
Range("A1").Copy
End Sub

Il me reste juste à faire ma recherche avant
 

skoobi

XLDnaute Barbatruc
Re : Aide svp : rechercher copier coller une cellule

Bonsoir,

je te propose ce code:

Code:
Private Sub CommandButton1_Click()

Dim cellule As Range, trouve As Range, suite As Range

Set cellule = Range("B4") 'valeur à chercher
With Sheets("Feuil2")
    Set suite = .Range("A1").End(xlDown).Offset(1, 0) 'identifie la prochaine cellule vide
    Set trouve = .Columns("A").Find(cellule.Value, LookIn:=xlValues, lookat:=xlWhole) 'cherche B4 en colonne A
    If trouve Is Nothing Then 'si pas trouvé
        cellule.Copy suite
    Else: MsgBox "Attention, valeur présente!", vbInformation
          Exit Sub
    End If
End With
    
End Sub
 

nak

XLDnaute Occasionnel
Re : Aide svp : rechercher copier coller une cellule

Merci pour ta réponse très rapide ;)

Ta formule fonctionne très bien avec des nombres par contre ma cellule B4 ressemble plutôt à ça :
=CONCATENER(Feuil2!B34;"-";C5;"-";Feuil2!D34;Feuil2!E34;"-";Feuil2!G34;"X";Feuil2!I34;Feuil2!J34;Feuil2!F34)

Y a t-il une solution pour quelle fonctionne en mode texte ?

Merci
Nak
 

skoobi

XLDnaute Barbatruc
Re : Aide svp : rechercher copier coller une cellule

essaye en faisant cette modification:

Set trouve = .Columns("A").Find(cellule.Value, LookIn:=xlFormulas ...............

Pour info, "Find" correspond à la recherche d'excel (Edition - Rechercher).
 

nak

XLDnaute Occasionnel
Re : Aide svp : rechercher copier coller une cellule

Désolé de te déranger à nouveau mais cette formule ne fonctionne pas.
J'ai essayé de reporter ma cellule avec =TEXTE mais c'est toujours pareil voir pire.
Je joins le fichier si tu as le temps de donner un oeil, je fais copier la cellule B28 sur la feuille 3.

Merci beaucoup pour ton aide.
 

Pièces jointes

  • nak.zip
    15.7 KB · Affichages: 35
  • nak.zip
    15.7 KB · Affichages: 35
  • nak.zip
    15.7 KB · Affichages: 33

nak

XLDnaute Occasionnel
Re : Aide svp : rechercher copier coller une cellule

Bonjour

Oui dans la feuille 3 il n'y a que des "#REF", c'est ce qu'il se produit quand la macro colle la cellule B28 avec la fonction =CONCATENER.

J'ai modifié le fichier, la macro fonctionne pour la partie recherche. Elle me dit bien que mon texte est existant.
Maintenant quand elle ne trouve pas la même valeur elle colle un "#REF" en gardant la mise en forme de la cellule B28 :(

Merci
Nak
 

Pièces jointes

  • nak002.zip
    15.3 KB · Affichages: 36

skoobi

XLDnaute Barbatruc
Re : Aide svp : rechercher copier coller une cellule

Re bonjour,

voici la modification à apporter:


Code:
..............
If trouve Is Nothing Then 'si pas trouvé
[COLOR=Blue][B]        suite.Value = cellule.Value[/B][/COLOR]
    Else: MsgBox "Attention, code existant!", vbInformation
          Exit Sub
    End If
.............
 

nak

XLDnaute Occasionnel
Re : Aide svp : rechercher copier coller une cellule

Re bonjour

Je désire faire évoluer cette macro (merci Skoobi :) ) pour pouvoir l'utiliser dans un fichier partagé.
Aujourd'hui quand je partage le fichier un seul poste peut copier la cellule sur la dernière feuille. Si une deuxième personne veut également copier la cellule il y a conflit. En fait il faudrait utiliser une commande pour rafraichir la dernière feuille ou la classeur en entier.

voici la formule:

Private Sub CommandButton1_Click()

Dim cellule As Range, trouve As Range, suite As Range

Set cellule = Range("B28") 'valeur à chercher
With Sheets("codes_créés")
Set suite = .Range("A1").End(xlDown).Offset(1, 0) 'identifie la prochaine cellule vide
Set trouve = .Columns("A").Find(cellule.Value, LookIn:=xlFormulas, lookat:=xlWhole) 'cherche B4 en colonne A
If trouve Is Nothing Then 'si pas trouvé
suite.Value = cellule.Value
Else: MsgBox "Attention, code existant!", vbInformation
Exit Sub
End If
ActiveWorkbook.Save
Range("B28").Copy
End With

End Sub



Merci

Nak
 

nak

XLDnaute Occasionnel
Re : Aide svp : rechercher copier coller une cellule

Bon je viens de parcourir le forum et il me semble que cela est impossible :(

Pour contourner le problème serait-il possible de copier cette fameuse cellule dans un fichier texte ou csv ?
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
313 344
Messages
2 097 337
Membres
106 916
dernier inscrit
Soltani mohamed