Copier uniquement une valeur

Résolu
marc -  
 marc -
Bonjour,

J'utilise la méthode:

cell.Offset(0, 9).Copy Range("Arrivée4").Cells.SpecialCells(xlCellTypeBlanks).Range("A1")

pour créer un résumé des options choisies.
Mon poblème est que certaines cellules ne contienne pas directement du text mais un renvoie vers une autre cellule.

Donc

Puis-je ajouter un .value quelque part ou autre afin que cette ligne de code saisisse uniquement le contenu de la cellule.

Merci

3 réponses

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    copier le contenu et pas la formule:

    Range("Arrivée4").Cells.SpecialCells(xlCellTypeBlanks).Range("A1") = Range("A1").Value
    0
  2. marc
     
    Re-bonjour,

    Dim cell As Range, plage As Range
    Set plage = Range("Choix")
    For Each cell In plage
    If cell.Value = 1 Then
    cell.Offset(0, 3).Copy Range("Arrivée").Cells.SpecialCells(xlCellTypeBlanks).Range("A1")
    cell.Offset(0, 4).Copy Range("Arrivée2").Cells.SpecialCells(xlCellTypeBlanks).Range("A1")
    cell.Offset(0, 5).Copy Range("Arrivée3").Cells.SpecialCells(xlCellTypeBlanks).Range("A1")
    cell.Offset(0, 9).Copy Range("Arrivée4").Cells.SpecialCells(xlCellTypeBlanks).Range("A1") = Range("A1").Value
    End If
    Next

    J'ai l'erreur la méthode copy de la classe range à échoué,
    si je vais sur value il me marque value = vide
    Mais le décalage est correct la cellule n'est pas vide
    Est, ce que le problème pourrait être du à d'autre cellule vide dans la 9ème colonne?

    Merci
    0
  3. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

    Cela peut venir du fait que votre plage nommee soit totalement remplie
    0
    1. marc
       
      Bonjour,

      Je vous mets un fichier histoire d'avoir du concret.
      http://cjoint.com/?3ClikVJI7tg

      En mettant un 1 pour les options choisies dans la zone bleu.
      Le collage fonctionne très bien mais colle un lien en fonction de la cellule d'arrivée et non la valeur
      Les 2 plages ont suffisament d'espace
      Mais en ajoutant ***= range("a1").value**** une erreur apparaît

      Si ça vous aide.

      Merci dans tout les cas
      0
    2. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Bonjour,

      C'est ce que je vous ai ecrit Lien (#1). De plus 29 options et 27 cases en resume ??????

      Sub Résumé()
      Dim cell As Range, plage As Range

      Set plage = Range("Choix")
      For Each cell In plage
      If cell.Value = 1 Then
      'copie la formule
      'cell.Offset(0, 1).Copy Range("Arrivée").Cells.SpecialCells(xlCellTypeBlanks).Range("A1")
      'copie la valeur
      Range("Arrivée").Cells.SpecialCells(xlCellTypeBlanks).Range("A1") = cell.Offset(0, 1)
      End If
      Next
      Sheets("Résumé").Select
      End Sub
      0
    3. marc
       
      ça fonctionne bien. merci
      0