1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
| Sub principale() 'Programme principal
Call Convert_creationfeuille
Call Espacement
Call Délimitation
Call Espacement_2
Call Insertion_colonne
Call fractionnement_2
End Sub
Sub Convert_creationfeuille()
Columns("A:A").EntireColumn.AutoFit
Range("B1").Select
ActiveCell.FormulaR1C1 = "=MID(RC[-1],1,4)"
Range("B1").Select
Selection.AutoFill Destination:=Range("B1:B355")
Range("B1:B355").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Cells.Select
Application.CutCopyMode = False
Selection.AutoFilter
ActiveSheet.Range("$A$1:$B$355").AutoFilter Field:=2, Criteria1:=":61:"
Selection.Copy
Sheets.Add After:=ActiveSheet
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Dim onglet As Worksheet
Dim colonne_a_supprimer As Long
Set onglet = Worksheets(2)
colonne_a_supprimer = 2
onglet.Cells(1, colonne_a_supprimer).EntireColumn.Delete
End Sub
toutes les instruction ci-dessous doivent etre exécuter dans le nouvel onglet crée ci-dessus. Mais ce nest pas le cas dans ma macro. Pouvez-vous maider svp ?
Sub Espacement()
Dim plage As Range
Set plage = Range("A1:A1000")
For Each c In plage
c.Value = Replace(c.Value, "S103", " S103")
c.Value = Replace(c.Value, "S202", " S202")
c.Value = Replace(c.Value, "//", " //")
c.Value = Replace(c.Value, ":61:", ":61: ")
Next c
End Sub
Sub Délimitation()
Range("A:A").TextToColumns Destination:=Range("A1")
End Sub
Sub Espacement_2 ()
Dim plage As Range
Set plage = Range("c1:C1000")
For Each c In plage
c.Value = Replace(c.Value, "C", " C ")
c.Value = Replace(c.Value, "D", " D ")
Next c
End Sub
Sub Insertion_colonne
Dim maVariable As Long
maVariable = 3 'Selectionner le nombre de colonne
Columns("D:D").Select 'A modifier suivant l'endroit où tu veux rajouter tes colonones
For i = 1 To maVariable
Selection.Insert Shift:=xlToRight
Next
End Sub
Sub fractionnement_2 ()
Range("C:C").TextToColumns Destination:=Range("C1")
End Sub |
Partager