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

Convertir données en automatique

alb05

XLDnaute Occasionnel
bonjour
j'ai récupéré un fichier exporté d'Access que je voudrai intégrer dans Excel.
Le problème est que toutes les colonnes sont préfixées de '
Comment faire pour m'éviter de passer par les options "Données" + "Convertir" pour chaque colonne ?
merci
 

Pièces jointes

  • à convertir.xls
    16.5 KB · Affichages: 152

bcharef

XLDnaute Accro
Re : Convertir données en automatique

Bonjour alb05,
Bonjour à toutes et à tous.

Si, j'ai bien compris.

Tapez 1 dans une cellule quelconque, puis copiez cette cellule, et procéder à un collage spécial sur la plage à convertir, et choisissez l'opération Multiplication.

Cordialement.

BCharef
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Convertir données en automatique

Bonjour à tous,

@ bcharef: je pense que ta solution fonctionnera uniquement pour les cellules qui peuvent être multipliées et qu'elle ne fonctionnera pas pour les cellules contenant du texte

une autre solution-------------------> faire une macro
ça fait une demi-heure que j'essaie et il me semble que le premier caractère n'est pas ( ' )apostrophe qui devrait avoir le code 39

à+
Philippe
 

Staple1600

XLDnaute Barbatruc
Re : Convertir données en automatique

Bonjour à tous


Tu as tort phlaurent55


Code:
Sub Macro2()
Dim r As Range
With ActiveSheet
    Set r = .UsedRange
        With .[IV65536]
            .Value = 1
            .Copy
            r.PasteSpecial Paste:=xlAll, Operation:=xlMultiply, SkipBlanks:=False, Transpose:=False
            .Clear
        End With
End With
End Sub
 

JCGL

XLDnaute Barbatruc
Re : Convertir données en automatique

Bonjour à tous,
Salut Philippe ,
Re l'Agrafe ,

Les données en R, X et AC se retrouvent sans les décimales (virgules dans le fichier)

A+ à tous
 

JCGL

XLDnaute Barbatruc
Re : Convertir données en automatique

Bonjour à tous,

Peux-tu essayer avec :
Code:
Option Explicit

Sub Convertir()
    Feuil1.UsedRange.Copy
    Feuil2.Range("A1").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    Range("A1").Select
End Sub

Les données sont copiées sur 'Feuil2' mais peuvent être rapatriées sur 'Feuil1'.

A+ à tous
 

alb05

XLDnaute Occasionnel
Re : Convertir données en automatique

Bonjour
pour le moment aucune des solutions ne convertie comme le fait l'option "convertir - données" du menu.
Les copy/paste utilisés ne prennent pas en compte le format :
exemple pour macro2 : la colonne E de la date
exemple pour convertir() : les colonnes numériques ne sont pas numériques
Par contre, les 2 méthodes suppriment bien le caractère ' de début de cellule.
 

Pièces jointes

  • à convertir 2.xls
    30 KB · Affichages: 109

mikeo

XLDnaute Occasionnel
Re : Convertir données en automatique

Bonjour,

J'ai appliqué la méthode de bcharef sur l'ensemble du document et je trouve que cela marche bien (20 secondes). Il y a juste à mettre la colonne D en format date (10 secondes). Où est le problème ?

M
 

JCGL

XLDnaute Barbatruc
Re : Convertir données en automatique

Bonjour à tous,

Si tu utilises le point comme séparateur, il faut remplacer les virgules par des points :

Code:
Option Explicit

Sub Convertir()
    Feuil1.UsedRange.Copy
    Feuil2.Range("A1").PasteSpecial Paste:=xlPasteValues
    Feuil2.UsedRange.Replace What:=",", Replacement:=".", LookAt:=xlPart
    Application.CutCopyMode = False
    Range("A1").Select
End Sub

A+ à tous
 

Staple1600

XLDnaute Barbatruc
Re : Convertir données en automatique

Bonjour

EDITION: car si on peut alors ceci fonctionne (pour les cellules "nombres" )
Code:
Sub convert_cell_chiffres()
Dim i As Long
For i = 1 To 50
Select Case i
Case 3, 6, 9 To 23, 29 To 38, 43 To 46
Columns(i).TextToColumns Destination:=Cells(1, i)
End Select
Next
End Sub
alb05
Tu nous disais
Comment faire pour m'éviter de passer par les options "Données" + "Convertir" pour chaque colonne ?
Aujourd'hui tu nous dis
pour le moment aucune des solutions ne convertie comme le fait l'option "convertir - données" du menu.
Alors on a le droit ou pas d'utiliser Données/Convertir ?

Ma macro fonctionne sauf comme le remarquait JCGL pour les colonnes R,X,AC
(donc on pouvait adapter le code pour ces colonnes spécifiques ...)
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Convertir données en automatique

Re à tous et joyeuses et pluvieuse Paques

Avec cette macro tout est converti (je viens de tester )

Code:
Sub Convert_TOUT_OK_v3()
Dim i As Long
[IV65536] = 1
Application.ScreenUpdating = False
For i = 1 To 50
Select Case i
Case 3, 6, 9 To 23, 29 To 38, 43 To 46
Columns(i).TextToColumns Destination:=Cells(1, i)
Case 1, 2, 4, 7, 27, 28, 39 To 42, 47 To 50
With [IV65536]
    .Copy
    Range(Cells(1, i), Cells(65536, i).End(xlUp)).PasteSpecial xlAll, xlMultiply
End With
Case 5
Columns(i).TextToColumns Destination:=Cells(1, i), _
DataType:=xlDelimited, FieldInfo:=Array(1, 4)
End Select
Next
[IV65536].Clear
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
 
Dernière édition:
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…