Bonsoir,
je m'appelle Yohanes et je m'excuse de vous déranger. J'ai un petit problème lié à ce sujet à savoir supprimer les deux premiers caractères d'une cellule dans deux colonnes selon des conditions à partir d'un Userform.
Si la cellule commence par "gu", "ku", kw" alors les deux premiers caractères (c'est à dire en fait le "gu", "ku", "kw" sont supprimés)
Si la cellule commence avec n'importe quel autre lettre, aucune suppression n'est faîte.
Voici ce que j'ai commencer à écrire, mais je ne sais pas rajouter la condition. Pourriez vous m'aider svp ?
Private Sub valider_Click()
Dim i As Long, j As Long, mot As String, participe As String, iRow As Long, iCol As Long, col As Long
Dim ws As Worksheet, pas As Worksheet, espace As Long, phrase As String, mot1 As String, nom As String
i = Me.premiere
j = Me.derniere
col = Me.colonne
Set ws = Worksheets("participe")
Set pas = Worksheets("Passes")
For iRow = i To j
mot = pas.Cells(iRow, 1).Value
ws.Cells(iRow, 1).Value = mot
ws.Cells(iRow, 2).Value = mot
For iCol = 3 To col
If pas.Cells(iRow, iCol).Value = "" Then
Else
participe = pas.Cells(iRow, iCol).Value
ws.Cells(iRow, 3).Value = participe
End If
Next
Next
Set pas = Worksheets("participe")
For iCol = 2 To 3
For iRow = 2 To 10000 ' à cet endroit j'aimerais insérer la condition si et seulement si
'le mot ou la phrase commence par les termes : "gu", "kw" ou "ku" dans les colonnes B et C alors...
'supprimer les deux premières lettres sinon pour tous les autres aucune suppression
mot1 = pas.Cells(iRow, iCol).Value
phrase = Mid(mot1, 3)
espace = InStr(phrase, " ")
mot = Left(phrase, espace)
mot = Replace(mot, " ", "")
nom = Mid(phrase, espace + 1)
pas.Cells(iRow, iCol).Value = phrase
Next
Next
On Error Resume Next
With Worksheets("participe")
.Activate
.PivotTables(1).PivotCache.Refresh
End With
Unload Me
End Sub
Petite explication :
L'userform copie des données d'une autre feuille et les dispatche en 3 colonnes dans la feuille "participe" : Colonne A l'infinitif, Colonne B le radical (qui est l'infinitif sans le gu, ku, kw) et Colonne C le participe passé (qui lui aussi ne devrait pas avoir le "gu", "ku", "kw". Mon problème est que pour les colonnes B et C la marque de l'infinitif le "gu", "ku", "kw" sont toujours là et quand j'utilise le code écrit plus haut la suppression affecte toute les cellules sans regarder préalablement si elles ont le défaut que je souhaite supprimer.
Merci d'avance