Bonjour,
Je souhaite réaliser une opération simple, qui fontionne mais jusqu'àun certain point.. Voilà le principe:
J'ai deux colonnes 'Début' et 'Fin'
Dans chacune de ces colonnes des adresses de blocs sont inscrites, de manière à constituer des ranges, exemple:
Début Fin
A1 B6
A8 B13
etc...
Mon algo copie donc la plage indiquée sur chaque ligne depuis un onglet Excel vers Word. Voici le bout incriminé:
Donc ça fonctionne, sur genre... 30 lignes puis après plantage (Erreur 4198), sur la ligne wordapp.Selection.PasteExcel.
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 Set wordapp = CreateObject("Word.Application") Set wordDoc = wordapp.Documents.Open("S:\DataManagement\Programmes\Base_TUCR\Documents_Word\Dsheet.doc") wordapp.Visible = True wordapp.ScreenUpdating = False Sheets("Data_Sheet").Activate For Each cell In Sheets("Data_Sheet").Range("Q5:Q100") If cell.Value = "Oui" Then ActiveSheet.Range(cell.Offset(0, 1) & ":" & cell.Offset(0, 2)).Select Selection.Copy wordapp.Selection.PasteExcelTable False, False, False wordapp.Selection.TypeParagraph End If Next
Je tiens à préciser qu'en faisant varier la plage, ce n'est pas toujours la même ligne qui plante, donc a priori ce n'est pas une erreur de saisie d'adresse (mauvaise syntaxe).
Je penche personnellement pour un problème de mémoire ou un truc du genre...
Je suis sous XP Sp2, Excel 2003 et Word 2003 et la référence 'VBA Microsoft Word 11 Object library' est cochée dans mes références...
Des idées?
Merci d'avance!
Partager