Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Séparer une colonne en plusieurs colonnes en VB.NET

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lulu_bistify

XLDnaute Nouveau
Bonjour à tous !
J'ai actuellement besoin d'un petit coup de main sur un petit problème que je n'arrive pas à résoudre,
j'ai un fichier Excel contenant toutes les informations dans la premiere colonne. Ces informations sont en CSV donc j'aimerais transformer ces "," en colonnes. Avec la macro j'ai vu plus ou moins ce que je devais faire mais quand je reproduis un code similaire en VB.NET, je n'y arrive pas, le xls ne bouge pas d'un pouce :/

Merci d'avance,

Code:
 Sub Macro_Excel_GoodArray(ByVal Path_of_Excel As String)


        Dim xlApp As Excel.Application
        Dim xlWorkBook As Excel.Workbook
        Dim xlWorkSheet As Excel.Worksheet
        Dim Range As Excel.Range
        Dim mycol(,) As Object = New Object(,) {{1, 2}, {2, 2}, {3, 5}, {4, 1}, {5, 2}, {6, 1}, {7, 1}, {8, 1}, {9, 1}, {10, 1}, {11, 1}, {12, 1}}





        xlApp = CreateObject("Excel.Application")

        xlApp.Application.DisplayAlerts = False

        xlWorkBook = xlApp.Workbooks.Open(Path_of_Excel)

        xlWorkSheet = xlWorkBook.ActiveSheet

        Range = xlWorkSheet.Range("A1", "A" & xlWorkSheet.Rows.Count)





        Range.TextToColumns(xlWorkSheet.Range("A1"), Microsoft.Office.Interop.Excel.XlTextParsingType.xlDelimited, Microsoft.Office.Interop.Excel.XlTextQualifier.
       xlTextQualifierDoubleQuote, FieldInfo:=mycol, ConsecutiveDelimiter:=False, Semicolon:=False, Space:=False, Other:=False, Comma:=True, Tab:=True, TrailingMinusNumbers:=True)
        'FieldInfo:=Array(Array(1, 1), Array(12, 1)))


        xlWorkBook.Close() 'The workbook is closed
        xlApp.Quit() 'The application is quitted

        releaseObject(xlApp) 'The application is released properly
        releaseObject(xlWorkBook) 'The workbook is released properly
        releaseObject(xlWorkSheet) ' The worksheet is released properly


    End Sub
 
Re : Séparer une colonne en plusieurs colonnes en VB.NET

Merci de ta réponse rapide, alors oui j'ai fait cela pour voir le code en VBA et l'adapter en VB.NET, en VBA ce que je désire faire c'est :

Sub Macro2()
Attribute Macro2.VB_ProcData.VB_Invoke_Func = " \n14"
'
' Macro2 Macro
'

'
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
Array(7, 1), Array(8, 1), Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1)), _
TrailingMinusNumbers:=True
Cells.Select
Selection.ColumnWidth = 14.86
End Sub
Sub test()


 

Pièces jointes

  • apres.jpg
    80.8 KB · Affichages: 142
  • apres.jpg
    80.8 KB · Affichages: 149
  • avant.jpg
    83.8 KB · Affichages: 355
  • avant.jpg
    83.8 KB · Affichages: 361
Re : Séparer une colonne en plusieurs colonnes en VB.NET

bonjour,

Moi je ne parle pas de VBA mais d'un outil de base qui sépare directement sans VBa des données sur d'une seule colonne en n colonne en lui précisant le séparateur , ici la virgule.

si tu mettais ton fichier en piéces jointe ce serai plus facile
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…