Création d'un fichier d'import selon un format spécifique

Bonjour à vous tous,

J'ai besoin d'aide, je connais un peu la programmation mais pas vraiment le langage et la syntaxe VBA, j'apprends à l'aide de différent exemple que je peux trouver sur le net. Je comprends la lecture du code !

Je dois créer un fichier d'import pour un logiciel qui doit avoir un format et une disposition bien spécifique. Je vous met en exemple le fichier de base et ce à quoi il doit ressembler pour pouvoir être importer dans le logiciel. Il y a environ 400 articles et actuellement j'ai fais des copier/coller manuellement à en avoir des crampes aux doigts. Alors si une personnes bien attentionné pouvait m'aider j'en serais très reconnaissante car je dois faire cette opération tous les mois et si je pouvais avoir le code pour l'insérer dans une macro je gagnerai beaucoup de temps et sans compter que le risque d'erreur se réduit très fortement !

Un grand merci déjà à la personne qui voudrait bien m'aider

11prix.xlsx (13.75 Ko)

Bonjour,

voici un exemple,

pour transformer les kg gr en nombre

Sub transform_Kg()
 For Each c In Sheets("Fichier de base").Range("A3:A" & Cells(Rows.Count, 1).End(xlUp).Row)
  If Right(c, 2) = "kg" Then
    c.Value = Format(Left(c, Len(c) - 3), "0.000") * 1
  Else
    c.Value = Format("0.0" & Left(c, Len(c) - 3), "0.000") * 1
  End If
 Next
End Sub

pour le transfert des données,

Sub Transfert()
Dim sh1 As Worksheet, article As Range, prix As Range, qte As Range
Set sh1 = Sheets("Fichier remodeler")
With Sheets("Fichier de base")
 Set article = .Range("B2:" & .Cells(2, Columns.Count).End(xlToLeft).Address)
 Set prix = .Range("B3:B" & .Cells(Rows.Count, 1).End(xlUp).Row)
 Set qte = .Range("A3:A" & .Cells(Rows.Count, 1).End(xlUp).Row)
 deb = 2
End With

 For i = 1 To article.Columns.Count
   sh1.Range(Cells(deb + 1, 2).Address, Cells(prix.Columns(i).Rows.Count + deb, 2).Address) = Application.MRound(prix.Columns(i).Value, 1)
   sh1.Range(Cells(deb + 1, 1).Address, Cells(prix.Columns(i).Rows.Count + deb, 1).Address) = article(1, i).Value
   sh1.Range(Cells(deb + 1, 3).Address, Cells(prix.Columns(i).Rows.Count + deb, 3).Address) = qte.Value
   deb = sh1.Cells(Rows.Count, 1).End(xlUp).Row
 Next
End Sub

mais je ne connais pas les données Table de prix

Rechercher des sujets similaires à "creation fichier import format specifique"