Macro à remanier

arckeo72

XLDnaute Nouveau
Bonjour à tous,

j'ai enregistré cette macro, elle fonctionne bien mais mes nombres se retrouvent en format texte.

Que faut-il faire ?

J'ai mis le fichier à modifier et le résultat à obtenir pour que cela soit plus compréhensible.

En gros voici les manip effectuée :
Convertir/Délimité/virgule
Remplacer les points par des virgules
Suppression des doublons
Suppression des données en colonne D et E


D'avance merci de votre aide.


Sub Macro1()
'
' Macro1 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(1, 1), TrailingMinusNumbers:=True
Selection.ColumnWidth = 17.57
Range("E17").Select
Cells.Replace What:=".", Replacement:=",", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
ActiveSheet.Range("$A$10:$G$66").RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, _
7), Header:=xlYes
End Sub
 

Pièces jointes

  • fichier brut.xlsx
    9.9 KB · Affichages: 36
  • fichier modifié.xlsx
    10.7 KB · Affichages: 26

arckeo72

XLDnaute Nouveau
Re : Macro à remanier

J'ai une autre question,

le fichier provient d'un logiciel (une fonction "exporter") et celui est en format .csv, je colle donc ce fichier dans un dossier à votre avis est ce qu'il serait possible de reprendre automatiquement les données qu'il contient dans le dossier ou il se trouve ?

J’espère avoir été assez clair ...
 

Pierrot93

XLDnaute Barbatruc
Re : Macro à remanier

Bonjour,

pas ouvert tes fichiers mais essaie peut être ainsi :
Code:
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), DecimalSeparator:=".", TrailingMinusNumbers:=True

bonne soirée
@+
 

ROGER2327

XLDnaute Barbatruc
Re : Macro à remanier

Bonsoir à tous.


Une proposition (à propos du message #1) :​
VB:
Sub Distribuer()
    With Range("$A$1:$A$57")
        .RemoveDuplicates Columns:=1, Header:=xlYes
        .TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
            Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
            :=Array(Array(1, 4), Array(2, 1), Array(3, 1), Array(4, 9), Array(5, 9), Array(6, 1), _
            Array(7, 1)), DecimalSeparator:=".", TrailingMinusNumbers:=False
    End With
End Sub


ROGER2327
#6582


Jeudi 19 Clinamen 140 (Saint Barbeau, procureur et Sainte Morue, juste - fête Suprême Quarte)
21 Germinal An CCXXI, 7,0956h - gainier
2013-W15-3T17:01:46Z
 

arckeo72

XLDnaute Nouveau
Re : Macro à remanier

Bonjour,

Tout d'abord un grand merci à vous tous,

Pour ma question 2 j'ai trouvé une macro qui fonctionne très bien cependant il faudra que je change à chaque fois le chemin du fichier source, pensez-vous que si le fichier source se trouve dans un certain dossier on peut faire plus simple ...

Je m'explique, actuellement à chaque fois je créer un dossier nommé "xxx" et je colle mon fichier source à l'intérieur (nommé tout le temps pareil) puis je copie et colle les données dans mon autre fichier.

D'avance merci de votre aide.

Macro trouvée sur le net :

Sub test()
Dim classeurSource As Workbook, classeurDestination As Workbook

Set classeurSource = Application.Workbooks.Open("C:\Documents and Settings\fr01060\Desktop\export.csv", , True)
Set classeurDestination = ThisWorkbook
classeurSource.Sheets("export").Cells.Copy classeurDestination.Sheets("Feuil1").Range("A1")
classeurSource.Close False
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 499
Messages
2 088 999
Membres
104 001
dernier inscrit
dessinbecm