Bonjour,
je travaille sur des rejets d'une application pour mon travail et je souhaiterai automatiser un traitement sur le fichier que j'extrais chaque semaine.
Je suis débutant en VBA j'ai commencé une macro qui fonctionne plutôt bien sauf sur l'action finale => une rechercheV
Merci d'avance pour votre aide
je travaille sur des rejets d'une application pour mon travail et je souhaiterai automatiser un traitement sur le fichier que j'extrais chaque semaine.
Je suis débutant en VBA j'ai commencé une macro qui fonctionne plutôt bien sauf sur l'action finale => une rechercheV
Sub Rejets()
Rows("1:1").Select
Selection.Delete Shift:=xlUp
Rows("1:1").Select
Selection.Delete Shift:=xlUp
'Apres avoir supprimé les deux premieres lignes du fichier qui ne me servent pas Excel m'ouvre le fichier injecté dans le logiciel
Workbooks.Open Filename:="C:\Documents and Settings\XXX\Desktop\XXXX.csv" 'Ouvre le premier classeur
Application.Run ("Ranger") 'Permet de transformer le CSv en xls (voit plus bas)
ActiveWorkbook.SaveAs Filename:="C:\Documents and Settings\uXXXX\Desktop\XXX.xls"
'je copie ensuite le fichier injecté dans mon classeur avec mes rejets
Cells.Select
Selection.Copy
Workbooks("rejets XXXX.xls").Activate
Sheets.Add.Name = "XXXX"
Sheets("XXXX").Select
ActiveSheet.Paste
Range("A1:A1").Select
Sheets("XXXX").Select
'je Selectionne dans la premiere colonne les cellules non vides
nblignes = WksFeuille.Range("a65536").End(xlUp).Row
WksFeuille.Range("a1:h" & nblignes & "").Select
' je veux ensuite étendre la selection sur les deux colonnes d'apres afin de nommer ma plage pour faire ensuite une rechercheV Comment puis je faire?
'Derlign = Range("'409321'!A65000").End(xlUp).Row ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-10],'409321'!R1C1:R[" & Derlign & "]C10,9,FALSE)" 'RechercheV plage variable
Sheets.Add.Name = "R001"
Sheets.Add.Name = "0209"
Sheets.Add.Name = "0326"
Sheets.Add.Name = "0327"
Sheets.Add.Name = "R015"
'Chaque onglet correspond à un code d'erreur je souhaiterai qu'il copie les lignes qui ont ce code dans le bon onglet. Une piste?
End Sub
Sub lancement()
Dim fileToOpen As Variant
fileToOpen = Application.GetOpenFilename("Excel Files (*.xls), *.xls")
Workbooks.Open fileToOpen
If fileToOpen = False Then
MsgBox "Open " & fileToOpen
Else
Rejets
End If
End Sub
Sub Ranger() 'Traitement fichier au format CSV (point virgule)
NomFic = Application.GetOpenFilename(, , "programmes Presses")
If NomFic <> False Then
Workbooks.OpenText Filename:=NomFic, DataType:=1, Semicolon:=True, local:=True
End If
End Sub
Merci d'avance pour votre aide