Recherche si ds 1 String présence de: "," en fin

Nann

XLDnaute Nouveau
Bonsoir tout le monde,


Mon soucit et le suivant,

Dans la colonne B à partir de la ligne 3,

je souhaite savoir, si dans ma chaine de caractère ( String1 ) le dernier caractère est une virgule et si oui couper le string2 de la case du dessous et le coller à la fin du string 1, effacer la ligne du dessous qui à donc sa case en colonne B vide et recommencer jusqu'à ce que string1 ne finisse pas par une virgule.
Puis passer à la case du dessous et ainsi de suite
Et si la case du dessous et vide, effacer la ligne ce jusqu'a la ligne 500.

Désolé d'avance pour l'echaufement de neurones
Et merci d'avance.
 

Nann

XLDnaute Nouveau
Bonsoir Hellboy,

Cela va probaplement te rappeler quelque chose ;) [file name=materiel_20051010202614.zip size=7167]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/materiel_20051010202614.zip[/file]
 

Pièces jointes

  • materiel_20051010202614.zip
    7 KB · Affichages: 6

Hellboy

XLDnaute Accro
re

Effectivement, oui ! :)

Voici ma proposition, sans l'effacement des lignes. Pourquoi ?, parce que si tu sélectionne à l'aide du fiultre automatique toutes les lignes vides après le traitement de la macro, tu verra qu'il te reste des données dans la colonne A et C pour ces mêmes lignes vides en B.


Option Explicit
Public Sub CommonComa()
       
Dim intLastCell        As Integer, intCell        As Integer
       
Dim strCellRef            As String
       
Dim bytOffsetCount    As Byte
       
        intLastCell = Cells(65532, 2).End(xlUp).Row
        strCellRef = Cells(3, 2)
        bytOffsetCount = 0
       
       
For intCell = 3 To intLastCell
               
With Cells(intCell, 2)
                       
If (InStrRev(.Offset(bytOffsetCount, 0).Value, ',') = Len(.Offset(bytOffsetCount, 0))) And Not .Value = Empty Then
                                strCellRef = .Value
                               
Do
                                    bytOffsetCount = bytOffsetCount + 1
                                    strCellRef = strCellRef & .Offset(bytOffsetCount, 0).Value
                                    .Offset(bytOffsetCount, 0).ClearContents
                               
Loop Until Not (InStrRev(Cells(intCell, 2).Offset(bytOffsetCount + 1, 0).Value, ',') = Len(Cells(intCell, 2).Offset(bytOffsetCount + 1, 0)))
                            .Value = strCellRef
                                intCell = intCell + bytOffsetCount
                                bytOffsetCount = 0
                       
End If
               
End With
       
Next intCell
       
End Sub
 

Hervé

XLDnaute Barbatruc
Re:Recherche si ds 1 String présence de: "," en fi

resalut nann, hellboy

peut etre en utilisant ce type de code :

Sub Bouton1_QuandClic()
Dim i As Integer

'boucle sur chaque ligne de la colonne b en commencant par la fin
For i = Range('b65536').End(xlUp).Row To 3 Step -1
   
'si la cellule en colonne B se termine par ,
   
If Right(Cells(i, 2), 1) = ',' Then
       
'on concatene la cellule avec celle d'en dessous
        Cells(i, 2) = Cells(i, 2) & Cells(i + 1, 2)
       
'on supprime la ligne d'en dessous
        Rows(i + 1).Delete
   
End If
Next i
   
End Sub

salut
 

Hervé

XLDnaute Barbatruc
Re:Recherche si ds 1 String présence de: "," en fi

salut nann

pas sur d'avoir compris, mais essaye ceci :

Sub Bouton1_QuandClic()
Dim i As Integer

'boucle sur chaque ligne de la colonne b en commencant par la fin
For i = Range('b65536').End(xlUp).Row To 3 Step -1
   
If IsNumeric(Cells(i, 2)) Then Rows(i).Delete
   
'si la cellule en colonne B se termine par ,
   
If Right(Cells(i, 2), 1) = ',' Then
       
'on concatene la cellule avec celle d'en dessous
        Cells(i, 2) = Cells(i, 2) & Cells(i + 1, 2)
       
'on supprime la ligne d'en dessous
        Rows(i + 1).Delete
   
End If
Next i
End Sub


J'ai rajouté ceci : If IsNumeric(Cells(i, 2)) Then Rows(i).Delete

qui dit que si la cellule en colonne B contient du numérique, alors supprime la ligne

salut
 

Discussions similaires

Statistiques des forums

Discussions
312 472
Messages
2 088 709
Membres
103 929
dernier inscrit
Tangerine9