sebFr | Salut,
Je débute complètement en VB, j'ai fait une macro répondant à mes besoins.
Un fichier excel d'un client est généré avec une marque de voiture par feuille, et dans chaque feuille des annonces, dont je veux extraire celles avec un prix valide et les mettre dans un nouveau fichier ...
Elle marche nickel, mais si vous pouvez jeter un oeil pour vérifier la syntaxe.
Par contre, je voudrais que cette macro soit accessible tt le temps dans excel (macro complémentaire) mais je n'arrive pas à faire fonctionner, si qq peut m'expliquer.
Merci d'avance
Seb
Code :
- 'Fonction exportant tous les véhicules dans un nouveau fichier
- Sub ExportVehicules()
- ' On déclare les fichiers
- Dim fichier_source As Workbook
- Dim fichier_final As Workbook
- Set fichier_source = ThisWorkbook
- Set fichier_final = Workbooks.Add(xlWBATWorksheet)
- Dim ligne%
- ligne = 1
- ' les feuilles du doc
- Dim Sht As Worksheet
- Dim Sht2 As Worksheet
- Set aSh = ActiveSheet
- Set Sht2 = fichier_final.Sheets(1)
- ' Pour chaque feuille du doc initial, chaque MARQUE
- For Each Sht In fichier_source.Worksheets
- ' Pour chaque ligne, chaque VEHICULE ' MsgBox Sht.Name & " comporte " & Sht.UsedRange.Rows.Count
- For j = 1 To Sht.UsedRange.Rows.Count
- ' Si c une bonne ligne, Prix ok
- If Sht.Cells(j, 6).Value <> "" And Sht.Cells(j, 6).Value <> "Prix proposé" And Sht.Cells(j, 6).Value <> "0" Then
- ' Pour chaque colonne (les 9 en fait)
- For i = 1 To 9
- Sht2.Cells(ligne, i).Value = Sht.Cells(j, i).Value
- Next i
- ' On saute une ligne dans le fichier final
- ligne = ligne + 1
- End If
- Next j
- Next Sht
- ' Fin fonction
- End Sub
|
|