Rapport de message :*
 

Re: Supprimer les espaces d'une cellule

Titre du sujet : Re: Supprimer les espaces d'une cellule
par myDearFriend! le 27/01/2023 18:17:43

Bonjour Razmo, le Forum,

 

En principe, lorsque qu'une erreur apparait, la ligne de code générant cette erreur bloquante est surlignée en jaune dans l'éditeur VBA. A quel endroit le code s'est-il arrêté et quelle est la ligne concernée ?

Selon moi, l'erreur n'est pas liée aux lignes que tu as écrite ici...

 

Pour tenter d'éclaircir tout ça, je résume la situation :

  1.  Tu as déclaré correctement les objets ranges suivants :
    Dim MaCellule As Range, MaPlage As Range
  2.  L'extrait de code ressemble à ceci :
    'Copy and paste column Matrix to Diff
    'Copy that cell values without comments
    MATRIX_LABEL_H_Datas.Copy 'Destination:=DIFF_LABEL_H.Offset(1, 0)
    DIFF_LABEL_H.Offset(1, 0).PasteSpecial Paste:=xlPasteValues
    MATRIX_DETECT_H_Datas.Copy 'Destination:=DIFF_DETECT_H.Offset(1, 0)
    DIFF_DETECT_H.Offset(1, 0).PasteSpecial Paste:=xlPasteValues
    MATRIX_STATE_H_Datas.Copy 'Destination:=DIFF_STATE_H.Offset(1, 0)
    DIFF_STATE_H.Offset(1, 0).PasteSpecial Paste:=xlPasteValues
    MATRIX_DTC_H_Datas.Copy 'Destination:=DIFF_DTC_H.Offset(1, 0)
    DIFF_DTC_H.Offset(1, 0).PasteSpecial Paste:=xlPasteValues
    
    
    Set MaPlage = DIFF_WS.UsedRange.Columns(DIFF_DTC_H.Column)
    Set MaCellule = DIFF_DTC_H.Offset(1, 0)
    
    For Each MaCellule In MaPlage.Cells
        'Étape 5: supprimer les espaces
        MaCellule.Value = Trim(MaCellule.Value)
    Next MaCellule
    Remarque : les expressions barrées sont à supprimer car inutiles. Par ailleurs, l'objet MaCellule est défini directement dans la boucle For Each et n'a donc pas lieu d'être défini par un Set en amont. 
     

Mais, selon moi, ces expressions inutiles ne sont pas à l'origine de ton message d'erreur... Pour moi, ce code doit fonctionner correctement et ton erreur est certainement ailleurs...

 

Bien cordialement,