Bonjour,
c'est ma première question et je ne suis pas un expert en la matière, mais j'ai beaucoup d'intérêt pour la programmation Excel et VBA.

Alors, j'ai programmé une macro dans un fichier Excel 2010 pour exporter des données dans un autre fichier Excel. La macro va vérifier la valeur d'une cellule ("NbDeLigneFin"), dans le fichier où elle doit exporter les données et qui lui dicte la prochaine ligne disponible au tableau.

Il arrive que la formule de cette cellule disparaisse et je ne comprend pas comment car cette cellule est dans une colonne cachée, or l'usager ne connaît même pas son existence. Je n'ai pas la valeur #valeur dans la cellule, la formule n'existe tout simplement plus, évidemment par la suite la macro ne fonctionne plus affichant erreur #13. C'est arrivé à deux reprise dans les derniers mois alors que la macro roule depuis près d'un an et demi.

Je me demande s'il est possible que lors d'un BUG, que la macro puisse couper la valeur ce cette cellule au lieu de simplement la copier ?

J'ai essayé de simuler l'erreur, je pensais que si le fichier était ouvert par un autre usager que cela pourrais causer le problème, mais non et ça ne fait pas de sens car alors le fichier serait en lecture seul.

Voici la partie de la macro lié à cette cellule :
[/contents/446-fichier-sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub ExporterDonnees()
'... plusieurs lignes de programmation...

ActiveSheet.Range("DataSUIVI").Select
    Selection.Copy
    OuvrirFichier CheminRepertoire & "BD\BD ÉLÉMENT BOIS\", "SUIVI JOB V1.xlsx"
    Workbooks(NomFichSUIVI).Activate
    Sheets("SUIVI").Select

'Stop
    Dim iRow As Integer
    Dim iRowFin As Integer
    iRow = Range("NbDeLigne")
    iRowFin = Range("NbDeLigneFin")
    Range("A" & iRowFin).Select 'todo: 873 ......
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, transpose:=False
    Range("NbDeLigneFin").Select
    Application.CutCopyMode = False
    ActiveWorkbook.Save
    ActiveWorkbook.Close
    
    Application.DisplayAlerts = True
    
End Sub
Merci
Patrick Sheehy