Excel 2003
j.sparo83
Messages postés
109
Statut
Membre
-
j.sparo83 Messages postés 109 Statut Membre -
j.sparo83 Messages postés 109 Statut Membre -
Bonjour,
J'ai une macro qui copie un contenu d'un fichier.xls à un autre et elle se bloque quand elle rencontre un contenu de cellule trop volumineux, l'erreur est ici :
ThisWorkbook.Sheets(1).Cells(v, j) = Workbooks(Wk.Name).Sheets(1).Cells(i, j)
C'est hyper urgent,
merci
J'ai une macro qui copie un contenu d'un fichier.xls à un autre et elle se bloque quand elle rencontre un contenu de cellule trop volumineux, l'erreur est ici :
ThisWorkbook.Sheets(1).Cells(v, j) = Workbooks(Wk.Name).Sheets(1).Cells(i, j)
C'est hyper urgent,
merci
A voir également:
- Excel 2003
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
- Excel trier par ordre croissant chiffre - Guide
5 réponses
Bonjour,
Si le fichier est confidentiel, merci tout de même de :
1- nous donner le message d'erreur entier
2- nous donner le code en entier.
Si le fichier est confidentiel, merci tout de même de :
1- nous donner le message d'erreur entier
2- nous donner le code en entier.
bonjour,
Voici le message d'erreur :
Sub ConsoSloi()
' Efface et consolide une SLOI a partir des autres SLOI présentes dans le répertoire
' Les nomns de fichiers doivent contenir "SLOI" ou "PSLI"
' Déclaration des variables entières de boucle
Dim i As Integer
Dim v As Integer
Dim j As Integer
'Declaration des classeurs folders et chaines associées
Dim Wk As Object
Dim rep As Object
Dim Chemin As String
Dim Fichier As String
ThisWorkbook.Activate
Chemin = ThisWorkbook.Path
Set rep = CreateObject("Scripting.FileSystemObject").GetFolder(Chemin)
v = 3
For Each Wk In rep.Files
If Wk.Name <> ThisWorkbook.Name Then
If InStr(Wk.Name, "SLOI") <> 0 Or InStr(Wk.Name, "SLI") <> 0 Or InStr(Wk.Name, "OIL") <> 0 Then
Fichier = Chemin & "\" & Wk.Name
Workbooks.Open Fichier
Workbooks(Wk.Name).Activate
For i = 3 To 10000
If IsEmpty(Workbooks(Wk.Name).Sheets(1).Cells(i, 3)) Then Exit For
For j = 2 To 34
ThisWorkbook.Sheets(1).Cells(v, j) = Workbooks(Wk.Name).Sheets(1).Cells(i, j)
Next j
v = v + 1
Next i
ActiveWorkbook.Close SaveChanges:=False
End If
End If
Next
For i = v To 10000
If IsEmpty(ThisWorkbook.Sheets(1).Cells(i, 3)) Then Exit For
For j = 2 To 34
ThisWorkbook.Sheets(1).Cells(v, j) = ""
Next j
Next i
ThisWorkbook.Activate
End Sub
Le message d'erreur :
>>>>>>erreur d'execution "1004"
erreur définie par l'application ou par l'objet<<<<<<
Le probleme se situe à la ligne :
<gras>ThisWorkbook.Sheets(1).Cells(v, j) = Workbooks(Wk.Name).Sheets(1).Cells(i, j)
Merci de m'aider car c'est ma place qui est en jeu :)
Voici le message d'erreur :
Sub ConsoSloi()
' Efface et consolide une SLOI a partir des autres SLOI présentes dans le répertoire
' Les nomns de fichiers doivent contenir "SLOI" ou "PSLI"
' Déclaration des variables entières de boucle
Dim i As Integer
Dim v As Integer
Dim j As Integer
'Declaration des classeurs folders et chaines associées
Dim Wk As Object
Dim rep As Object
Dim Chemin As String
Dim Fichier As String
ThisWorkbook.Activate
Chemin = ThisWorkbook.Path
Set rep = CreateObject("Scripting.FileSystemObject").GetFolder(Chemin)
v = 3
For Each Wk In rep.Files
If Wk.Name <> ThisWorkbook.Name Then
If InStr(Wk.Name, "SLOI") <> 0 Or InStr(Wk.Name, "SLI") <> 0 Or InStr(Wk.Name, "OIL") <> 0 Then
Fichier = Chemin & "\" & Wk.Name
Workbooks.Open Fichier
Workbooks(Wk.Name).Activate
For i = 3 To 10000
If IsEmpty(Workbooks(Wk.Name).Sheets(1).Cells(i, 3)) Then Exit For
For j = 2 To 34
ThisWorkbook.Sheets(1).Cells(v, j) = Workbooks(Wk.Name).Sheets(1).Cells(i, j)
Next j
v = v + 1
Next i
ActiveWorkbook.Close SaveChanges:=False
End If
End If
Next
For i = v To 10000
If IsEmpty(ThisWorkbook.Sheets(1).Cells(i, 3)) Then Exit For
For j = 2 To 34
ThisWorkbook.Sheets(1).Cells(v, j) = ""
Next j
Next i
ThisWorkbook.Activate
End Sub
Le message d'erreur :
>>>>>>erreur d'execution "1004"
erreur définie par l'application ou par l'objet<<<<<<
Le probleme se situe à la ligne :
<gras>ThisWorkbook.Sheets(1).Cells(v, j) = Workbooks(Wk.Name).Sheets(1).Cells(i, j)
Merci de m'aider car c'est ma place qui est en jeu :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j'ai oublié de préciser ce que fait ma MACRO:
Elle consolide plusieurs fichiers excel pour mettre tout le contenu dans un seul fichier, sachant que les ficihiers ont tous la meme forme.
Le hic, c'est qu'il commence à copier et dés qu'il arrive à une cellule qui comporte un nombre de caracteres important, il bug.
Merci mes amis
Elle consolide plusieurs fichiers excel pour mettre tout le contenu dans un seul fichier, sachant que les ficihiers ont tous la meme forme.
Le hic, c'est qu'il commence à copier et dés qu'il arrive à une cellule qui comporte un nombre de caracteres important, il bug.
Merci mes amis