Formatage et macro pour un listing de produit

Bonjour à tous,

Je viens vers la communauté d'Excel-Pratique étant néophyte sur Excel et ayant un réel besoin.

Le fichier excel, pour lequel je viens vers vous, est un listing de produit destiné à un enregistrement final au format .csv pour l'intégration dans une base de données via un script PHP réalisé par moi-même.

Le fichier excel comprend 12 colonnes : Référence, Libellé, Description, Disponibilité, Promotion, Nouveauté, Prix HT, Prix TTC, Fournisseur, Famille, Sous-famille et Taille.

J'aimerai tout d'abord forcer toutes les colonnes, sauf Prix HT et Prix TTC, dans un Format Standart de Cellule puis Prix HT et Prix TTC dans un Format Nombre avec deux décimales après la virgule.

Le problème que je rencontre, c'est lors d'un copier/coller d'un fichier excel d'un fournisseur, le formatage de ces cellules est perdu.

Deuxièmement, j'aimerai réaliser une macro me permettant en une seule et unique manipulation, supprimer les espaces superflus en début et en fin de chaine, supprimer un certain nombre de caractères posant problème lors de l'insertion dans la base de données et mettre le tout en majuscule.

J'ai trouvé plusieurs macro via Internet mais il subsiste des problèmes.

Sub Correction()
    For Each Item In Selection
    Item.Value = UCase(Item.Value)
    Item.Value = Application.Trim(Item.Value)
    Next
End Sub

Avec cette macro, les cellules au format Nombre deviennent n'importe quoi et elle oblige à sélectionner uniquement les cellules que l'on veut corriger.

Bref, je suis totalement perdu dans le langage VBA qu'utilise les macros et j'aimerai avoir un début de piste pour finaliser mon projet.

Merci d'avance pour toutes vos réponses et votre aide,

Cordialement, Alexandre

hello

peut-être en créant de nouvelle colonnes, égales à celles d'origine, mais formatées "en dur" selon tes besoins

avec des fonctions pour tronquer les décimales, effacer les caractères indésirables...

bon travail

Bonjour,

Je vais déjà essayer avec une deuxième feuille formatée comme je le désire en récupérant les valeurs de la première pour voir ce que cela donne.

Mais pour la macro de suppression des espaces superflus et l'automatisation des majuscules, je galère toujours !

Merci de ta première idée.

Cordialement, Alexandre

re

attention : formater (format de cellule) ne suffit pas, il faut utiliser des fonctions reformatent en dur (troncage...)

exemple pour toi : MAJUSCULE , REMPLACER , il y en a d'autres

et si besoin, tu figes ta 2è feuille en copiant, collage spécial/valeurs

Bonjour à tous.

Pour la suppression d'espaces dans un ensemble de cellules, essaaye cette macro.

Sub Supprime_Espaces()

For Each cell In Selection

MyString = cell.Formula

If Left(MyString, 1) = "=" Then GoTo suivant

cell.Formula = Trim(MyString)

Do While Not cell.Find(" ") Is Nothing

cell.Replace What:=" ", Replacement:=" "

Loop

suivant:

Next cell

End Sub

Je l'utilise souvent et ça marche

Pour la mise en majuscule, je mettrai ça prochainement.

Bonsoir à tous,

Ce que je fais dans certains fichiers :

- tu insère une ligne (ligne1) et tu remplis cette ligne avec les formats que tu veux.

c'est aussi valable pour les formats conditionnels.

cette ligne peut être cachée.

et ce code recopiera les formats sur toute ta base.

Sub formatCel()
Dim DerLig As Long
DerLig = Cells.Find("*", , , , xlByRows, xlPrevious).Row

        With Rows("1")
            .Copy
           Rows("8:" & DerLig).PasteSpecial Paste:=xlFormats   
            Application.CutCopyMode = False
        End With
End Sub

tu adapte le Rows("8:" &, par la 1ère ligne de ta base

amicalement

Claude.

Bonsoir,

Pour supprimer les espaces et retours "chariot" éventuels essaie ceci :

Sub supprimeespace()
'Macro par DAN le 25/02
Dim c As Range
For Each c In ActiveSheet.UsedRange
c = Trim(c)
c.Replace What:=Chr(13), Replacement:=""
Next c
End Sub

Cette macro agira sur toute la base de données.

Pour ta demande il serait intéressant de connaître les plages où tu veux mettre tout en majuscules.

A te relire

Amicalement

Dan

Rechercher des sujets similaires à "formatage macro listing produit"