Extraire le milieu d'une chaine de caractère

Résolu
f76 -  
 f76 -

Bonjour,

Je voudrais extraire le milieu d'une chaine de caractère, j'ai fait cette instruction mais ça ne compile pas et bloque sur le [-2] en demandant un séparateur de ligne.

If ActiveCell ="MS" and MID(cells(RC[-2],5,2))= "12" Then

ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete 

Pouvez-vous m'aider svp?

3 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     

    Bonjour,

    La notation RC est utilisée dans des formules, pas dans du code VBA

    Tu peux remplacer par :

    Mid(Cells(ActiveCell.Row - 2, ActiveCell.Column - 2), 5, 2)

    0
    1. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   1 588
       

      bonjour,

      on peut aussi utiliser offset():

      Mid(ActiveCell.offset(,- 2), 5, 2)
      0
  2. yg_be Messages postés 23437 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 588
     

    Au lieu de

    ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete

    Je pense que tu peux écrire

    ActiveCell.EntireRow.Delete
    0
  3. f76
     

    bonjour,

    Merci à tous pour votre aide.

    0