Supprimer premier caractère d'une cellule

Bonjour tout le monde,

Suite à une mise à jour d'un de nos logiciel, je n'arrive plus à charger correctement les données provenant d'un fichier CSV dans mon classeur EXCEL.

Le nom du classeur excel "Test_nouveau_format_18082014".

Le nom du fichier CSV contenant les données à charger "Fichier source"

L'objectif de ma macro "CopierCSV" est d'importer des données du "Fichier source" dans l'onglet "Feuil1" du classeur Excel "Test_nouveau_format_18082014".

Depuis la mise à jour de notre système, il y a un problème au niveau du format de date de la colonne C "Feuil1", impossible d'effectuer un filtre sur les dates. Le problème vient d'un espace avant la date, si on supprime l'espace, le filtre fonctionne de nouveau. J'ai essayé plusieurs forumule en VBA pour essayer de supprimer l'espace mais ça ne fonctionne pas .

Les commandes sont disponibles dans l'onglet "Commande", lors de l'application de la macro filtre "via le bouton Filtrer", les données sont copiées dans l'onglet "Feuil2" en fonction des critères "J6:L7".

Si quelqu'un à une idée ?

Merci d'avance.

Guillaume

Bonjour,

si il faut juste enlever un caractère à gauche,

Right(Cells().Value, len(Cells(, ).Value)-1) 

devrait fonctionner

edit : à adapter bien sur !

Bonjour,

Merci pour ta réponse mais cette formule ne fonctionne pas comme la formule droite ou gauche.

Bonsoir!

Je ne sais pas si j'ai bien saisi le soucis, mais si ton problème est d'enlever un espace devant chaque valeur de cellule d'une colonne X, pourquoi ne pas sélectionner la colonne, puis faire CTRL+F, remplacer " " par "", normalement ça va enlever tout les espaces présents dans les cellules de cette colonne... Enfin si j'ai bien compris et qu'aucun autre espace n'est présent

Bonne nuit,

Sq'

EDIT by "moi-même": Bon bah étant plus curieux que fatigué j'ai décidé de télécharger les fichiers, et en effet une selection de la colonne "C" => un simple CTRL+F => remplacer " " par "" et le tour est joué! Faire simple est souvent la meilleure solution

Bonjour

@Squalleh

Peut-être que j'interprète mal ce que tu as marqué mais si dans la colonne C je fais Remplacer " " par "", cela enlève bien l'espace du début, mais inconvénient majeur enlève aussi l'espace entre la date et l'heure

Pour enlever cet espace en début, rajoutes ce bout de code dans la macro " Sub CopierCSV()"

  Workbooks.Open Filename:=Nomfichierentree, local:=True

  With Range("V2:V" & Range("A" & Rows.Count).End(xlUp).Row)
    .Formula = "=TRIM(D2)*1"
    .Value = .Value
    .Copy Range("D2")
  End With

  'copies des données, suppression de la ligne Alias

    'Columns("C").NumberFormat = "d/m/yyyy hh:mm"
    Columns("D").NumberFormat = "d/m/yyyy hh:mm"

@Banzaï => En effet... J'avais donc bien précisé "si pas d'autres espaces indispensables", mais j'ai oublié de vérifier le cœur de la cellule ne me fixant que sur le début... Merci pour la remarque

Sq'

Bonjour,

Merci à vous deux, c'est parfait

Juste pour ma curiosité, comment fonctionne le code ? Je ne connais pas la fonction TRIM et comment l'appliquer uniquement sur le premier caractère de la cellule ?

Bonjour

La fonction Trim permet d'enlever les espaces en début de chaîne et ceux en fin de chaîne

Extrait de l'aide

Renvoie une valeur de type Variant (String) contenant une copie d'une chaîne en supprimant les espaces de gauche (LTrim), les espaces de droite (RTrim) ou les deux (Trim).

Syntaxe

Rechercher des sujets similaires à "supprimer premier caractere"