Bonjour,
Je sais que je ne suis pas la seule à être confrontée à ce problème de distinction activate/select mais malgré tout ce que j'ai lu sur le forum, je n'arrive pas à comprendre
Alors je me dis que j'ai un exemple concret où mon code fonctionne de temps en temps (!). Je suppose que tout repose sur cette histoire de cellule activée à distance. Je ne sais pas si mon code indique bien que la cellule est dans excel. Pourriez-vous me dire ce qui ne va pas dans mon code (que j'ai à 99% pris sur le forum et qui fonctionne très bien s'il est lancé directement dans excel mais je l'ai modifié pour le lancer depuis access et il ne fonctionne plus en systématique).
Merci pour votre aide.
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
25
26
27
28
29
30 Sub FusionCellule(xlWkb As excel.Workbook, xlWsh As String, MyColumn As String) Dim val As String, valad As String Dim flag As Boolean xlWkb.Worksheets(xlWsh).Activate xlWkb.Worksheets(xlWsh).Range(MyColumn & "3").Select 'c'est à la ligne du do until que de temps en temps j'ai le message Variable objet ou variable de bloc With non définie Do Until ActiveCell.Value = "" val = ActiveCell.Value valad = ActiveCell.Address flag = True Do While val = ActiveCell.Value ActiveCell.Offset(1, 0).Select If flag = False Then ActiveCell.Offset(-1, 0).ClearContents End If flag = False Loop ActiveCell.Offset(-1, 0).Select Range(valad, ActiveCell.Address).Select With Selection .Merge .MergeCells = True .VerticalAlignment = xlCenter .HorizontalAlignment = xlCenter .WrapText = True End With ActiveCell.Offset(1, 0).Select Loop End Sub
Partager