[RESOLU] Comparer 2 fichiers de données

Comparer 2 fichiers de données [RESOLU] - VB/VBA/VBS - Programmation

Marsh Posté le 10-10-2007 à 12:31:21    

Salut,
 
je cherche à comparer les données de deux fichiers, et ai réalisé la macro suivante:
 

Code :
  1. Sub comparer()
  2. Dim FileName, Path, Comp, Ini, Fin As String
  3. Dim NumLigne, NumCol, MinL, MaxL, MinC, MaxC As Integer
  4. Path = "T:\Reporting\Consolidation\"
  5. Comp = "Indicateurs Reporting"
  6. Workbooks.Open (lancement_comp.TextBox1)
  7. Workbooks.Open (lancement_comp.TextBox2)
  8. Workbooks(Comp).Activate
  9. MinL = 14
  10. MaxL = 30
  11. MinC = 3
  12. MaxC = 6
  13. For Each ws In Worksheets
  14.     If (ws.Name <> "Sommaire" ) Then
  15.         For NumCol = MinC To MaxC
  16.             For NumLigne = MinL To MaxL
  17.                 Workbooks(Comp).Sheets(ws.Name).Cells(NumLigne, NumCol).NumberFormat = "0%"
  18.                 If (Workbooks(lancement_comp.TextBox1).Sheets(ws.Name).Cells(NumLigne, NumCol) <> "" ) Then
  19.                     Workbooks(Comp).Sheets(ws.Name).Cells(NumLigne, NumCol) = (Workbooks(lancement_comp.TextBox1).Sheets(ws.Name).Cells(NumLigne, NumCol) - Workbooks(lancement_comp.TextBox2).Sheets(ws.Name).Cells(NumLigne, NumCol)) / Workbooks(lancement_comp.TextBox2).Sheets(ws.Name).Cells(NumLigne, NumCol)
  20.                     On Error Resume Next
  21.                 End If
  22.             Next NumLigne
  23.         Next NumCol
  24.     End If
  25. Next ws
  26. End Sub


 
ce qui ne marche pas du tout! J'ai une erreur "Type Mismatch"  dans le Workbooks(lancement_comp.TextBox1)...
le lancement_comp.Textbox1 donne bien le nom complet du fichier 1 à comparer (C:\...fichier.xls)
 
qu'set ce qui coince?


Message édité par azkatari le 10-10-2007 à 15:00:19
Reply

Marsh Posté le 10-10-2007 à 12:31:21   

Reply

Marsh Posté le 10-10-2007 à 13:31:59    

Si tu utilises la syntaxe « lancement_comp.TextBox1.Text », cela fonctionne-t-il mieux ?

Reply

Marsh Posté le 10-10-2007 à 13:42:46    

non :( j'avais de l'espoir mais rien! ca bloque toujour sur la ligne If (Workbooks(lancement_comp.TextBox1.Text).Sheets(ws.Name).Cells(NumLigne, NumCol) <> "" ) Then en disant Subscript out of range
Pourtant Textbox1.Text a bien le nom complet du fichier, ws.Name a bien le nom de la feuille, et NumLigne et NumCol sont bien au bon numéro, et le fichier est bien ouvert

Reply

Marsh Posté le 10-10-2007 à 14:07:42    

Attends !
Dans la syntaxe  « workbooks(truc) », truc ne doit pas comporter le chemin complet, mais juste le nom du document (si le document est bien ouvert, bien sûr).


Message édité par tegu le 10-10-2007 à 14:08:07
Reply

Marsh Posté le 10-10-2007 à 14:59:56    

j'ai rajouté ca:  
 
Dim Splichemin(),Fin,Ini as String
Splitchemin = Split(lancement_comp.TextBox1, "\", -1, vbTextCompare)
Fin = Splitchemin(UBound(Splitchemin))
 
ca marche beaucoup mieux comme ca! merci chef :hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed