Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/10/2011, 17h25   #1
Nouveau Membre du Club
 
Inscription : avril 2009
Messages : 134
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 134
Points : 29
Points : 29
Par défaut UserForm / ListBox / Affichage dynamique

Re bonjour à tous et toutes

Mon projet avance bien, je suis à la recherche désormais d'une petite amélioration

J'ai un UserForm qui affiche 1300 lignes issues d'un fichier excel par le biais d'une ListBox

Voici le code de ce UserForm

Code :
1
2
3
4
5
Private Sub UserForm_Initialize()
     Workbooks.Open "e:\1-AFF\AAA\00Base\BaseMateriels\NovoMaterBAse.xls"
    ActiveWindow.WindowState = xlMinimized
    ListBox1.RowSource = "[NovoMaterBAse.xls]BAseListe!B3:B1300"
End Sub
Naviguer dans cette listbox n'est pas chose aisée, vu sa longueur

D'ailleurs, la roulette de la souris n'a pas d'effet sur le défilement

J'ai une TextBox dans ce UserForm

Je souhaite pouvoir modifier l'affichage dans la listBox en fonction de ce qui est saisi dans la TextBox

Par exemple, je saisis "M", l'affichage de la liste box se positionne sur "machine", si je tape "mo" cela passe à "moteur" ....

Avez vous une piste ?

De nouveau merci par avance pour votre aide

Daniel
familledacp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/10/2011, 17h35   #2
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
dans les listbox tu à cette possibilité

Code :
ListBox1.MatchEntry = fmMatchEntryFirstLetter
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 14/10/2011, 21h39   #3
Nouveau Membre du Club
 
Inscription : avril 2009
Messages : 134
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 134
Points : 29
Points : 29
Bonsoir

Merci Jean Pierre pour cette nouvelle réponse pertinente

Si néanmoins tu as la méthode pour aller plus loin que la simple première lettre (caler la liste box selon les premières lettres ) je suis preneur

Bonsoir

Daniel
familledacp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/10/2011, 00h02   #4
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
Je n'ai pas Excel sur ce PCet oui ça peut arriver

mais regarde pour la propriété MatchEntry il y a peu être mieux

Ton idée m'intéresse, mais ce Week end, c'est raper

J'espere pour toi que tu auras une solution avant

si non je vais m'y attacher
bon WN
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 15/10/2011, 10h24   #5
Expert Confirmé Sénior
 
Avatar de mercatog
 
Inscription : juillet 2008
Messages : 5 848
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 5 848
Points : 13 907
Points : 13 907
Bonjour
Une proposition pour filtrer une ListBox en fonction du contenu d'un TextBox

Code commenté à mettre dans le module de l'userform
Code :
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
Option Explicit
'Variables globales à l'userform
Dim Tb
Dim Dm As Long
 
'========================================================
'Routine de remplissage de ListBox1 en fonction de:
'   - n étant le nombre d'éléments à ajouter
'   - S étant les données à ajouter
'En fonction du nombre d'éléments, on utilise soit .Additem (pour un unique élément) ou .List (pour un tableau)
 
Private Sub Remplissage(ByVal n As Long, ByVal S As Variant)
 
With Me.ListBox1
    If n = 1 Then
        .AddItem IIf(IsArray(S), S(1), S)
    ElseIf n > 1 Then
        .List = S
    End If
End With
End Sub
 
'========================================================
Private Sub UserForm_Initialize()
Dim Fichier As String
Dim Wbk As Workbook
Dim LastLig As Long
 
Application.ScreenUpdating = False
'Nom complet du fichier NocoMaterBAse (à adapter)
Fichier = "C:\Users\user\Desktop\NovoMaterBAse.xls"
'Si le fichier existe
If Dir(Fichier) <> "" Then
    'On ouvre le fichier
    Set Wbk = Workbooks.Open(Fichier)
    With Wbk.Worksheets("BAseListe")
        'Dernière ligne remplie de la colonne B de la feuille BAseListe (!Il fallait aussi tester l'existence de cette feuille)
        LastLig = .Cells(.Rows.Count, "B").End(xlUp).Row
        'On affecte la plage utile à la variable globale Tb
        Tb = .Range("B3:B" & LastLig)
        'Dm contient le nombre d'éléments de la liste
        Dm = LastLig - 2
    End With
    'On ferme le fichier sans sauvegarder
    Wbk.Close False
    Set Wbk = Nothing
    'On appelle la routine de remplissage de Listbox1
    Call Remplissage(Dm, Tb)
End If
End Sub
 
'========================================================
Private Sub TextBox1_Change()
Dim i As Long, j As Long
Dim Fltre As String
Dim Res() As String
 
'S'il y a au moins un élément dans notre liste
If Dm >= 1 Then
    'Ici c'est le texte entré dans la TextBox1 (mis en amjuscule)
    Fltre = UCase(Trim(Me.TextBox1))
    With Me.ListBox1
        'on efface note ListBox1
        .Clear
        'Si TextBox1<>""
        If Fltre <> "" Then
            'On parcourt le tableau Tb et on remplit le tableau Res par les émélents commençant par le texte entré en TextBox1
            For i = 1 To UBound(Tb, 1)
                If UCase(Tb(i, 1)) Like Fltre & "*" Then
                    j = j + 1
                    ReDim Preserve Res(1 To j)
                    Res(j) = Tb(i, 1)
                End If
            Next i
            'à la fin, on appelle la routine de remplissage sur Res (les données filtrées par TextBox1)
            Call Remplissage(j, Res)
            'on efface Res
            Erase Res
        Else
            'Si TextBox1 est vide, on appelle la routine de remplissage sur Tb (toutes les données)
            Call Remplissage(Dm, Tb)
        End If
    End With
End If
End Sub
 
'========================================================
'à la femeture de l'usf, on efface Tb
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
 
Erase Tb
End Sub
__________________
Cordialement.
mercatog est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 16/10/2011, 07h29   #6
Nouveau Membre du Club
 
Inscription : avril 2009
Messages : 134
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 134
Points : 29
Points : 29
Bonjour Mercatog et merci pour ce long post

Cela fonctionne parfaitement !

Merci de votre aide

Daniel
familledacp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2011, 08h31   #7
Membre Expert
 
Avatar de Jean-Pierre49
 
Homme J-Pierre Catherine
Conception Calcul
Inscription : juillet 2007
Messages : 659
Détails du profil
Informations personnelles :
Nom : Homme J-Pierre Catherine
Âge : 57
Localisation : France, Maine et Loire (Pays de la Loire)

Informations professionnelles :
Activité : Conception Calcul
Secteur : Industrie

Informations forums :
Inscription : juillet 2007
Messages : 659
Points : 1 856
Points : 1 856
Bonjour à tout le Forum


Je viens de tester le code de mercatog, qui bien entendu fonctionne

Mais comme j’en ai fais un aussi, je te le donne.

Il trie par ordre alphabétique, en considérant les accents (pour éviter d’avoir les é après les z)

Il renvoie d’autres valeurs en fonction du listebox.

Le code est à mettre dans un module et tu lance la procédure Test

Il va créer un Usf, un module avec une base (Les communes du Maine et Loire et leurs coordonnées, volontaire en ordre décroissant pour le tri)

Dans le code l’Usf n’est pas détruit

Code :
1
2
    'ThisWorkbook.VBProject.VBComponents.Remove Usf ' On détruit L'UserForm
    'ThisWorkbook.VBProject.VBComponents.Remove LeModule ' On détruit le module
Alors attention quand tu relance , pour Usf pas de problème mais pour le module ..(deux module ne peuvent pas avoir le même nom)


Tu adapte

Code :
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
Option Explicit
                                Dim LeModule                As Object
Sub Test()
    Call CréationBase
    Call NvUSF
End Sub
Sub NvUSF()
                                Dim Usf                     As Object
                                Dim LeModuleDeClasse        As Object ' pour test
 
    Set Usf = ThisWorkbook.VBProject.VBComponents.Add(3) ' On créer un nv UserForm
    Usf.Properties("Caption") = "Test"
    Usf.Properties("Width") = 520
    Usf.Properties("Height") = 265
 
' On Créer les différents contrôles ainsi que leurs propriétés
    With Usf.Designer.Controls.Add("Forms.ListBox.1")
        .Width = 318
        .Height = 110
        .Top = 36
        .Left = 18
        .BackColor = &HC0FFFF
    End With
 
    With Usf.Designer.Controls.Add("Forms.TextBox.1")
        .Width = 132
        .Height = 18
        .Top = 54
        .Left = 348
        .BackColor = &HC0FFFF
    End With
 
    With Usf.Designer.Controls.Add("Forms.Label.1")
        .Caption = "Pas de correspondance"
        .Width = 132
        .Height = 12
        .Top = 84
        .Left = 348
        .TextAlign = fmTextAlignCenter
        .Name = "Label1"
    End With
 
    With Usf.Designer.Controls.Add("Forms.Label.1")
        .Width = 80
        .Height = 18
        .Top = 192
        .Left = 104
        .TextAlign = fmTextAlignCenter
        .Name = "Label2"
    End With
 
    With Usf.Designer.Controls.Add("Forms.Label.1")
        .Width = 80
        .Height = 18
        .Top = 192
        .Left = 186
        .TextAlign = fmTextAlignCenter
        .Name = "Label3"
    End With
 
    With Usf.Designer.Controls.Add("Forms.Label.1")
        .Caption = "Latitude"
        .Width = 80
        .Height = 18
        .Top = 168
        .Left = 186
        .TextAlign = fmTextAlignCenter
        .Name = "Label4"
    End With
 
    With Usf.Designer.Controls.Add("Forms.Label.1")
        .Caption = "Longitude"
        .Width = 80
        .Height = 18
        .Top = 168
        .Left = 104
        .TextAlign = fmTextAlignCenter
        .Name = "Label5"
    End With
 
    With Usf.Designer.Controls.Add("Forms.Label.1")
        .Caption = "Recherche (Sensible aux accents)"
        .Width = 132
        .Height = 12
        .Top = 42
        .Left = 348
        .TextAlign = fmTextAlignCenter
        .Name = "Label6"
    End With
 
    With Usf.Designer.Controls.Add("Forms.Label.1")
        .Caption = "Liste"
        .Width = 318
        .Height = 12
        .Top = 24
        .Left = 18
        .TextAlign = fmTextAlignCenter
        .Name = "Label7"
    End With
 
'On créer les lignes de procédure de l'Userform
    With Usf.CodeModule
'Déclaration des variables
        .InsertLines .CountOfLines, "                     Dim LaListe()                As String" & vbCrLf & vbCrLf _
            & "                     Dim ValTemp                  As String" & vbCrLf _
            & "                     Dim CompA                    As Long" & vbCrLf _
            & "                     Dim CompB                    As Long" & vbCrLf _
            & "                     Dim LettreAccent             As String" & vbCrLf _
            & "                     Dim LettreSansAccent         As String" & vbCrLf & vbCrLf _
            & "                     Dim Plage                    As Range" & vbCrLf _
            & "                     Dim Cellule                  As Range"
 
'Private Sub UserForm_Initialize()
        .InsertLines .CountOfLines + 1, "Private Sub UserForm_Initialize()" & vbCrLf _
            & "' Création de 2 tableaux pour le remplacement des accents éventuels" & vbCrLf _
            & "                     Dim Ind                      As Long" & vbCrLf _
            & "    LettreAccent = ""à;â;ä;é;è;ê;ë;î;ï;ô;ö;ù;û;ü;ÿ""" & vbCrLf _
            & "    LettreSansAccent = ""a;a;a;e;e;e;e;i;i;o;o;u;u;u;y""" & vbCrLf _
            & "    Call RecupBase" & vbCrLf _
            & "' Instance de la liste des valeurs choisies (ici dans la colonne A)" & vbCrLf _
            & "     Set Plage = Range(""A1:A"" & Range(""A"" & Rows.Count).End(xlUp).Row)" & vbCrLf _
            & "     For Each Cellule In Plage" & vbCrLf _
            & "     Ind = Ind + 1 ' incrémentation" & vbCrLf _
            & "     ReDim Preserve LaListe(Ind)  ' on redimensionne la variable Laliste" & vbCrLf _
            & "         ValTemp = Cellule.Value ' on met la valeur dans une variable temporaire" & vbCrLf _
            & "             For CompA = 0 To UBound(Split(LettreAccent, "";"")) ' On met en minuscule et remplace les accents" & vbCrLf _
            & "                 ValTemp = Replace(LCase(ValTemp), Split(LettreAccent, "";"")(CompA), Split(LettreSansAccent, "";"")(CompA))" & vbCrLf _
            & "             Next CompA" & vbCrLf _
            & "         LaListe(Ind) = ValTemp & "";"" & Cellule.Value & "";"" & Cells(Ind, 2) & "";"" & Cells(Ind, 3) ' On remplis La variable LaListe" & vbCrLf _
            & "     Next Cellule" & vbCrLf
 
        .InsertLines .CountOfLines + 1, "' On trie Laliste en ordre croissant par la valeur en minuscule et sans accents" & vbCrLf _
            & "     For CompA = 1 To UBound(LaListe)" & vbCrLf _
            & "        For CompB = 1 To UBound(LaListe)" & vbCrLf _
            & "            If Split(LaListe(CompA), "";"")(0) < Split(LaListe(CompB), "";"")(0) Then" & vbCrLf _
            & "                ValTemp = LaListe(CompA)" & vbCrLf _
            & "                LaListe(CompA) = LaListe(CompB)" & vbCrLf _
            & "                LaListe(CompB) = ValTemp" & vbCrLf _
            & "            End If" & vbCrLf _
            & "        Next CompB" & vbCrLf _
            & "     Next CompA" & vbCrLf
 
        .InsertLines .CountOfLines + 1, "' On recupère la liste définitive dans le ListBox1" & vbCrLf _
            & "     With Me" & vbCrLf _
            & "         For CompA = 1 To UBound(LaListe)" & vbCrLf _
            & "             .ListBox1.AddItem Split(LaListe(CompA), "";"")(1)" & vbCrLf _
            & "         Next CompA" & vbCrLf _
            & "         .Label1.Visible = False" & vbCrLf _
            & "         .Label2.Caption = Split(LaListe(1), "";"")(2)" & vbCrLf _
            & "         .Label3.Caption = Split(LaListe(1), "";"")(3)" & vbCrLf _
            & "         .TextBox1.SetFocus" & vbCrLf _
            & "     End With" & vbCrLf _
            & "End Sub"
 
'Private Sub TextBox1_Change()
        .InsertLines .CountOfLines + 1, "Private Sub TextBox1_Change()" & vbCrLf _
            & "                     Dim Mouchard            As Boolean" & vbCrLf _
            & "     With Me" & vbCrLf _
            & "         ValTemp = UCase(.TextBox1.Value) ' On renvoi en majuscule" & vbCrLf & vbCrLf _
            & "         .ListBox1.Clear ' On nettoie ListBox1" & vbCrLf _
            & "' On recupère la liste pouvant correspondre à la valeur recherchée" & vbCrLf _
            & "         For CompA = 1 To UBound(LaListe)" & vbCrLf _
            & "             If Left(UCase(Split(LaListe(CompA), "";"")(1)), Len(ValTemp)) = ValTemp Then 'On test sur les majuscules" & vbCrLf _
            & "                 .ListBox1.AddItem Split(LaListe(CompA), "";"")(1)" & vbCrLf _
            & "                 Mouchard = True ' On intialise Mouchard" & vbCrLf _
            & "             End If" & vbCrLf _
            & "         Next CompA"
 
        .InsertLines .CountOfLines + 1, "' On test Mouchard" & vbCrLf _
            & "         If Mouchard = False Then" & vbCrLf _
            & "             .TextBox1.Value = Left(.TextBox1.Value, Len(.TextBox1.Value) - 1) ' si pas de valeur trouvée On enleve le dernier caractère de  TextBox1" & vbCrLf _
            & "             .Label1.Visible = True ' On affiche l'allerte" & vbCrLf _
            & "             .Label2.Visible = False ' On Cache Label2 (Longitude)" & vbCrLf _
            & "             .Label3.Visible = False ' On Cache Label3 (Latitude)" & vbCrLf _
            & "         Else" & vbCrLf _
            & "             .TextBox1.Value = Left(.ListBox1.List(0), Len(ValTemp)) ' Si Oui on fait correspondre TextBox1 avec le début des valeurs de ListBox1" & vbCrLf _
            & "             .Label1.Visible = False" & vbCrLf _
            & "             .Label2.Visible = True ' On Affiche Label2 (Longitude)" & vbCrLf _
            & "             .Label3.Visible = True ' On Affiche Label3 (Latitude)" & vbCrLf _
            & "             For CompA = 1 To UBound(LaListe)" & vbCrLf _
            & "                 If .ListBox1.List(0) = Split(LaListe(CompA), "";"")(1) Then" & vbCrLf _
            & "                     .Label2.Caption = Split(LaListe(CompA), "";"")(2) ' On recupère Label2 (Longitude)" & vbCrLf _
            & "                     .Label3.Caption = Split(LaListe(CompA), "";"")(3) ' On recupère Label3 (Latitude)" & vbCrLf _
            & "                 End If" & vbCrLf _
            & "             Next CompA" & vbCrLf _
            & "         End If" & vbCrLf _
            & "     End With" & vbCrLf _
            & "End Sub"
 
'Private Sub ListBox1_Click()
        .InsertLines .CountOfLines + 1, "Private Sub ListBox1_Click()" & vbCrLf _
            & "     With Me" & vbCrLf _
            & "         For CompA = 1 To UBound(LaListe)" & vbCrLf _
            & "             If .ListBox1.Value = Split(LaListe(CompA), "";"")(1) Then ' On recherche Dans la liste" & vbCrLf _
            & "                 .Label2.Caption = Split(LaListe(CompA), "";"")(2) ' On recupère Label2 (Longitude)" & vbCrLf _
            & "                 .Label3.Caption = Split(LaListe(CompA), "";"")(3) ' On recupère Label3 (Latitude)" & vbCrLf _
            & "             End If" & vbCrLf _
            & "         Next CompA" & vbCrLf _
            & "         .TextBox1.SetFocus" & vbCrLf _
            & "     End With" & vbCrLf _
            & "End Sub"
    End With
 
 
 'Test pour un module de classe
    Set LeModuleDeClasse = ThisWorkbook.VBProject.VBComponents.Add(2)
    LeModuleDeClasse.Properties("Name") = "Test"
 
    With Usf
        VBA.UserForms.Add(.Name).Show ' on ouvre l'UserForm
    End With
 
    'ThisWorkbook.VBProject.VBComponents.Remove Usf ' On détruit L'UserForm
    'ThisWorkbook.VBProject.VBComponents.Remove LeModule ' On détruit le module
    ThisWorkbook.VBProject.VBComponents.Remove LeModuleDeClasse ' On détruit le module
 
    Application.DisplayAlerts = False
        Sheets("Base").Delete
    Application.DisplayAlerts = True
End Sub
Sub CréationBase()
    Application.ScreenUpdating = False
    Sheets.Add
    ActiveSheet.Name = "Base"
 'Test pour un module
    Set LeModule = ThisWorkbook.VBProject.VBComponents.Add(1)
    LeModule.Properties("Name") = "Base"
    With LeModule.CodeModule
        .InsertLines .CountOfLines, "                     Public BaseTest(363)               As String" & vbCrLf _
        & "                     Dim CompA                          As Long" & vbCrLf _
        & "Sub RecupBase()" & vbCrLf _
        & "     BaseTest(1) =""Yzernay;47°01'20''N;00°42'06''W""" & vbCrLf _
        & "     BaseTest(2) =""Vivy;47°19'38''N;00°03'11''W""" & vbCrLf _
        & "     BaseTest(3) =""Villevêque;47°33'42''N;00°25'20''W""" & vbCrLf _
        & "     BaseTest(4) =""Villemoisan;47°27'51''N;00°53'28''W""" & vbCrLf _
        & "     BaseTest(5) =""Villedieu-la-Blouère;47°08'52''N;01°03'46''W""" & vbCrLf _
        & "     BaseTest(6) =""Villebernier;47°15'14''N;00°01'46''W""" & vbCrLf _
        & "     BaseTest(7) =""Vihiers;47°08'50''N;00°31'57''W""" & vbCrLf _
        & "     BaseTest(8) =""Vezins;47°07'15''N;00°42'37''W""" & vbCrLf _
        & "     BaseTest(9) =""Verrie;47°15'59''N;00°10'42''W""" & vbCrLf _
        & "     BaseTest(10) =""Vernoil-le-Fourrier;47°23'18''N;00°04'48''W""" & vbCrLf _
        & "     BaseTest(11) =""Vern-d'Anjou;47°36'04''N;00°50'05''W""" & vbCrLf _
        & "     BaseTest(12) =""Vernantes;47°23'38''N;00°03'10''W""" & vbCrLf _
        & "     BaseTest(13) =""Vergonnes;47°43'34''N;01°05'04''W""" & vbCrLf _
        & "     BaseTest(14) =""Vaulandry;47°35'51''N;00°02'34''W""" & vbCrLf _
        & "     BaseTest(15) =""Vaudelnay;47°08'16''N;00°12'11''W""" & vbCrLf _
        & "     BaseTest(16) =""Vauchrétien;47°20'01''N;00°28'31''W""" & vbCrLf _
        & "     BaseTest(17) =""Varrains;47°13'25''N;00°03'42''W""" & vbCrLf _
        & "     BaseTest(18) =""Varennes-sur-Loire;47°14'21''N;00°03'17''W""" & vbCrLf _
        & "     BaseTest(19) =""Valanjou;47°12'53''N;00°35'39''W""" & vbCrLf _
        & "     BaseTest(20) =""Turquant;47°13'25''N;00°01'43''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(21) = ""Trémont;47°09'32''N;00°26'44''W""" & vbCrLf _
        & "     BaseTest(22) =""Trémentines;47°07'24''N;00°47'07''W""" & vbCrLf _
        & "     BaseTest(23) =""Trélazé;47°26'48''N;00°27'55''W""" & vbCrLf _
        & "     BaseTest(24) =""Toutlemonde;47°03'21''N;00°45'57''W""" & vbCrLf _
        & "     BaseTest(25) =""Torfou;47°02'18''N;01°06'53''W""" & vbCrLf _
        & "     BaseTest(26) =""Tillières;47°08'43''N;01°09'48''W""" & vbCrLf _
        & "     BaseTest(27) =""Tigné;47°12'05''N;00°25'38''W""" & vbCrLf _
        & "     BaseTest(28) =""Tiercé;47°36'56''N;00°27'58''W""" & vbCrLf _
        & "     BaseTest(29) =""Thouarcé;47°16'04''N;00°29'55''W""" & vbCrLf _
        & "     BaseTest(30) =""Thorigné-d'Anjou;47°38'23''N;00°39'43''W""" & vbCrLf _
        & "     BaseTest(31) =""Tancoigné;47°10'32''N;00°24'26''W""" & vbCrLf _
        & "     BaseTest(32) =""Souzay-Champigny;47°14'12''N;00°00'28''W""" & vbCrLf _
        & "     BaseTest(33) =""Soulaire-et-Bourg;47°34'48''N;00°33'06''W""" & vbCrLf _
        & "     BaseTest(34) =""Soulaines-sur-Aubance;47°21'56''N;00°31'16''W""" & vbCrLf _
        & "     BaseTest(35) =""Soucelles;47°34'11''N;00°25'02''W""" & vbCrLf _
        & "     BaseTest(36) =""Somloire;47°02'05''N;00°36'18''W""" & vbCrLf _
        & "     BaseTest(37) =""Sœurdres;47°44'20''N;00°34'23''W""" & vbCrLf _
        & "     BaseTest(38) =""Sermaise;47°31'31''N;00°12'43''W""" & vbCrLf _
        & "     BaseTest(39) =""Seiches-sur-le-Loir;47°34'25''N;00°21'17''W""" & vbCrLf _
        & "     BaseTest(40) =""Segré;47°41'14''N;00°52'15''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(41) =""Sceaux-d'Anjou;47°37'20''N;00°36'19''W""" & vbCrLf _
        & "     BaseTest(42) =""Savennières;47°23'02''N;00°39'23''W""" & vbCrLf _
        & "     BaseTest(43) =""Saumur;47°15'36''N;00°04'37''W""" & vbCrLf _
        & "     BaseTest(44) =""Saulgé-l'Hôpital;47°17'48''N;00°22'53''W""" & vbCrLf _
        & "     BaseTest(45) =""Sarrigné;47°30'09''N;00°23'02''W""" & vbCrLf _
        & "     BaseTest(46) =""Saint-Sylvain-d'Anjou;47°31'14''N;00°28'14''W""" & vbCrLf _
        & "     BaseTest(47) =""Saint-Sulpice;47°24'03''N;00°24'57''W""" & vbCrLf _
        & "     BaseTest(48) =""Saint-Sigismond;47°27'16''N;00°56'29''W""" & vbCrLf _
        & "     BaseTest(49) =""Saint-Sauveur-de-Landemont;47°17'06''N;01°15'17''W""" & vbCrLf _
        & "     BaseTest(50) =""Saint-Sauveur-de-Flée;47°45'16''N;00°47'27''W""" & vbCrLf _
        & "     BaseTest(51) =""Saint-Saturnin-sur-Loire;47°23'44''N;00°26'05''W""" & vbCrLf _
        & "     BaseTest(52) =""Saint-Rémy-la-Varenne;47°23'53''N;00°18'52''W""" & vbCrLf _
        & "     BaseTest(53) =""Saint-Rémy-en-Mauges;47°16'18''N;01°04'28''W""" & vbCrLf _
        & "     BaseTest(54) =""Saint-Quentin-lès-Beaurepaire;47°37'41''N;00°06'24''W""" & vbCrLf _
        & "     BaseTest(55) =""Saint-Quentin-en-Mauges;47°17'33''N;00°54'43''W""" & vbCrLf _
        & "     BaseTest(56) =""Saint-Pierre-Montlimart;47°16'17''N;01°01'32''W""" & vbCrLf _
        & "     BaseTest(57) =""Saint-Philbert-en-Mauges;47°09'07''N;01°00'57''W""" & vbCrLf _
        & "     BaseTest(58) =""Saint-Philbert-du-Peuple;47°23'38''N;00°02'34''W""" & vbCrLf _
        & "     BaseTest(59) =""Saint-Paul-du-Bois;47°04'54''N;00°32'37''W""" & vbCrLf _
        & "     BaseTest(60) =""Saint-Michel-et-Chanveaux;47°40'52''N;01°07'45''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(61) =""Saint-Melaine-sur-Aubance;47°22'14''N;00°29'31''W""" & vbCrLf _
        & "     BaseTest(62) =""Saint-Mathurin-sur-Loire;47°24'50''N;00°19'04''W""" & vbCrLf _
        & "     BaseTest(63) =""Saint-Martin-du-Fouilloux;47°25'55''N;00°42'12''W""" & vbCrLf _
        & "     BaseTest(64) =""Saint-Martin-du-Bois;47°42'24''N;00°44'27''W""" & vbCrLf _
        & "     BaseTest(65) =""Saint-Martin-de-la-Place;47°18'58''N;00°08'53''W""" & vbCrLf _
        & "     BaseTest(66) =""Saint-Martin-d'Arcé;47°33'35''N;00°05'01''W""" & vbCrLf _
        & "     BaseTest(67) =""Saint-Macaire-en-Mauges;47°07'28''N;00°59'26''W""" & vbCrLf _
        & "     BaseTest(68) =""Saint-Macaire-du-Bois;47°07'05''N;00°17'14''W""" & vbCrLf _
        & "     BaseTest(69) =""Saint-Lézin;47°15'01''N;00°46'25''W""" & vbCrLf _
        & "     BaseTest(70) =""Saint-Léger-sous-Cholet;47°05'38''N;00°54'30''W""" & vbCrLf _
        & "     BaseTest(71) =""Saint-Léger-des-Bois;47°27'40''N;00°42'28''W""" & vbCrLf _
        & "     BaseTest(72) =""Saint-Laurent-du-Mottay;47°21'02''N;00°56'54''W""" & vbCrLf _
        & "     BaseTest(73) =""Saint-Laurent-des-Autels;47°17'16''N;01°11'23''W""" & vbCrLf _
        & "     BaseTest(74) =""Saint-Laurent-de-la-Plaine;47°19'06''N;00°48'11''W""" & vbCrLf _
        & "     BaseTest(75) =""Saint-Lambert-la-Potherie;47°29'04''N;00°40'34''W""" & vbCrLf _
        & "     BaseTest(76) =""Saint-Lambert-du-Lattay;47°18'11''N;00°37'52''W""" & vbCrLf _
        & "     BaseTest(77) =""Saint-Just-sur-Dive;47°10'29''N;00°05'57''W""" & vbCrLf _
        & "     BaseTest(78) =""Saint-Jean-des-Mauvrets;47°23'57''N;00°26'52''W""" & vbCrLf _
        & "     BaseTest(79) =""Saint-Jean-de-Linières;47°27'31''N;00°39'22''W""" & vbCrLf _
        & "     BaseTest(80) =""Saint-Jean-de-la-Croix;47°24'38''N;00°35'32''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(81) =""Saint-Germain-sur-Moine;47°07'07''N;01°07'18''W""" & vbCrLf _
        & "     BaseTest(82) =""Saint-Germain-des-Prés;47°24'36''N;00°49'58''W""" & vbCrLf _
        & "     BaseTest(83) =""Saint-Georges-sur-Loire;47°24'36''N;00°45'40''W""" & vbCrLf _
        & "     BaseTest(84) =""Saint-Georges-sur-Layon;47°11'54''N;00°22'02''W""" & vbCrLf _
        & "     BaseTest(85) =""Saint-Georges-du-Bois;47°29'47''N;00°13'23''W""" & vbCrLf _
        & "     BaseTest(86) =""Saint-Georges-des-Sept-Voies;47°21'32''N;00°17'59''W""" & vbCrLf _
        & "     BaseTest(87) =""Saint-Georges-des-Gardes;47°09'03''N;00°45'29''W""" & vbCrLf _
        & "     BaseTest(88) =""Saint-Florent-le-Vieil;47°21'44''N;01°00'54''W""" & vbCrLf _
        & "     BaseTest(89) =""Sainte-Gemmes-sur-Loire;47°25'35''N;00°33'22''W""" & vbCrLf _
        & "     BaseTest(90) =""Sainte-Gemmes-d'Andigné;47°40'32''N;00°53'00''W""" & vbCrLf _
        & "     BaseTest(91) =""Sainte-Christine;47°17'14''N;00°50'54''W""" & vbCrLf _
        & "     BaseTest(92) =""Saint-Cyr-en-Bourg;47°11'41''N;00°03'34''W""" & vbCrLf _
        & "     BaseTest(93) =""Saint-Crespin-sur-Moine;47°05'59''N;01°11'05''W""" & vbCrLf _
        & "     BaseTest(94) =""Saint-Clément-des-Levées;47°19'54''N;00°11'01''W""" & vbCrLf _
        & "     BaseTest(95) =""Saint-Clément-de-la-Place;47°31'33''N;00°44'43''W""" & vbCrLf _
        & "     BaseTest(96) =""Saint-Christophe-la-Couperie;47°15'18''N;01°10'48''W""" & vbCrLf _
        & "     BaseTest(97) =""Saint-Christophe-du-Bois;47°01'46''N;00°56'38''W""" & vbCrLf _
        & "     BaseTest(98) =""Saint-Barthélemy-d'Anjou;47°28'06''N;00°29'38''W""" & vbCrLf _
        & "     BaseTest(99) =""Saint-Augustin-des-Bois;47°27'36''N;00°47'38''W""" & vbCrLf _
        & "     BaseTest(100) =""Saint-Aubin-de-Luigné;47°19'43''N;00°39'58''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(101) =""Saint-André-de-la-Marche;47°06'03''N;00°59'38''W""" & vbCrLf _
        & "     BaseTest(102) =""Roussay;47°05'29''N;01°03'49''W""" & vbCrLf _
        & "     BaseTest(103) =""Rou-Marson;47°14'09''N;00°09'20''W""" & vbCrLf _
        & "     BaseTest(104) =""Rochefort-sur-Loire;47°21'28''N;00°39'17''W""" & vbCrLf _
        & "     BaseTest(105) =""Rablay-sur-Layon;47°17'45''N;00°34'31''W""" & vbCrLf _
        & "     BaseTest(106) =""Querré;47°40'49''N;00°37'11''W""" & vbCrLf _
        & "     BaseTest(107) =""Pruillé;47°34'42''N;00°39'40''W""" & vbCrLf _
        & "     BaseTest(108) =""Pouancé;47°44'29''N;01°10'30''W""" & vbCrLf _
        & "     BaseTest(109) =""Pontigné;47°32'56''N;00°02'25''W""" & vbCrLf _
        & "     BaseTest(110) =""Pellouailles-les-Vignes;47°31'23''N;00°26'23''W""" & vbCrLf _
        & "     BaseTest(111) =""Passavant-sur-Layon;47°06'27''N;00°23'16''W""" & vbCrLf _
        & "     BaseTest(112) =""Parnay;47°13'55''N;00°00'33''W""" & vbCrLf _
        & "     BaseTest(113) =""Parçay-les-Pins;47°26'17''N;00°09'37''W""" & vbCrLf _
        & "     BaseTest(114) =""Nyoiseau;47°43'02''N;00°54'54''W""" & vbCrLf _
        & "     BaseTest(115) =""Nueil-sur-Layon;47°07'08''N;00°21'55''W""" & vbCrLf _
        & "     BaseTest(116) =""Nuaillé;47°05'43''N;00°47'40''W""" & vbCrLf _
        & "     BaseTest(117) =""Noyant-la-Plaine;47°16'33''N;00°21'33''W""" & vbCrLf _
        & "     BaseTest(118) =""Noyant-la-Gravoyère;47°42'17''N;00°57'14''W""" & vbCrLf _
        & "     BaseTest(119) =""Noyant;47°30'46''N;00°06'59''W""" & vbCrLf _
        & "     BaseTest(120) =""Notre-Dame-d'Allençon;47°18'11''N;00°26'55''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(121) =""Noëllet;47°41'40''N;01°05'25''W""" & vbCrLf _
        & "     BaseTest(122) =""Neuvy-en-Mauges;47°16'04''N;00°49'28''W""" & vbCrLf _
        & "     BaseTest(123) =""Neuillé;47°20'32''N;00°02'02''W""" & vbCrLf _
        & "     BaseTest(124) =""Mûrs-Erigné;47°23'46''N;00°33'07''W""" & vbCrLf _
        & "     BaseTest(125) =""Mozé-sur-Louet;47°21'30''N;00°33'02''W""" & vbCrLf _
        & "     BaseTest(126) =""Mouliherne;47°28'02''N;00°01'04''W""" & vbCrLf _
        & "     BaseTest(127) =""Morannes;47°44'47''N;00°24'56''W""" & vbCrLf _
        & "     BaseTest(128) =""Montsoreau;47°13'02''N;00°03'28''W""" & vbCrLf _
        & "     BaseTest(129) =""Montrevault;47°15'44''N;01°02'39''W""" & vbCrLf _
        & "     BaseTest(130) =""Montreuil-sur-Maine;47°39'04''N;00°41'44''W""" & vbCrLf _
        & "     BaseTest(131) =""Montreuil-sur-Loir;47°36'31''N;00°24'11''W""" & vbCrLf _
        & "     BaseTest(132) =""Montreuil-Juigné;47°31'45''N;00°36'39''W""" & vbCrLf _
        & "     BaseTest(133) =""Montreuil-Bellay;47°07'56''N;00°09'08''W""" & vbCrLf _
        & "     BaseTest(134) =""Montpollin;47°35'14''N;00°06'10''W""" & vbCrLf _
        & "     BaseTest(135) =""Montjean-sur-Loire;47°23'21''N;00°51'35''W""" & vbCrLf _
        & "     BaseTest(136) =""Montilliers;47°11'01''N;00°30'12''W""" & vbCrLf _
        & "     BaseTest(137) =""Montigné-lès-Rairies;47°37'16''N;00°12'05''W""" & vbCrLf _
        & "     BaseTest(138) =""Montguillon;47°43'43''N;00°44'36''W""" & vbCrLf _
        & "     BaseTest(139) =""Montfort;47°11'54''N;00°12'35''W""" & vbCrLf _
        & "     BaseTest(140) =""Montfaucon-Montigné;47°06'03''N;01°07'26''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(141) =""Miré;47°45'32''N;00°29'28''W""" & vbCrLf _
        & "     BaseTest(142) =""Méon;47°29'44''N;00°07'12''W""" & vbCrLf _
        & "     BaseTest(143) =""Melay;47°10'57''N;00°41'47''W""" & vbCrLf _
        & "     BaseTest(144) =""Meigné-le-Vicomte;47°30'36''N;00°11'32''W""" & vbCrLf _
        & "     BaseTest(145) =""Meigné;47°13'57''N;00°12'34''W""" & vbCrLf _
        & "     BaseTest(146) =""Mazières-en-Mauges;47°02'48''N;00°48'59''W""" & vbCrLf _
        & "     BaseTest(147) =""Mazé;47°27'25''N;00°16'18''W""" & vbCrLf _
        & "     BaseTest(148) =""Maulévrier;47°00'36''N;00°44'38''W""" & vbCrLf _
        & "     BaseTest(149) =""Martigné-Briand;47°14'02''N;00°25'44''W""" & vbCrLf _
        & "     BaseTest(150) =""Marigné;47°43'24''N;00°37'04''W""" & vbCrLf _
        & "     BaseTest(151) =""Marcé;47°34'51''N;00°19'30''W""" & vbCrLf _
        & "     BaseTest(152) =""Marans;47°38'22''N;00°51'27''W""" & vbCrLf _
        & "     BaseTest(153) =""Luigné;47°17'09''N;00°23'27''W""" & vbCrLf _
        & "     BaseTest(154) =""Lué-en-Baugeois;47°31'34''N;00°16'42''W""" & vbCrLf _
        & "     BaseTest(155) =""Louvaines;47°41'33''N;00°48'04''W""" & vbCrLf _
        & "     BaseTest(156) =""Louresse-Rochemenier;47°14'24''N;00°18'45''W""" & vbCrLf _
        & "     BaseTest(157) =""Louerre;47°17'50''N;00°19'23''W""" & vbCrLf _
        & "     BaseTest(158) =""Longué-Jumelles;47°22'45''N;00°06'24''W""" & vbCrLf _
        & "     BaseTest(159) =""Loiré;47°36'55''N;00°58'43''W""" & vbCrLf _
        & "     BaseTest(160) =""Liré;47°20'39''N;01°09'47''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(161) =""Linières-Bouton;47°27'42''N;00°04'41''W""" & vbCrLf _
        & "     BaseTest(162) =""L'Hôtellerie-de-Flée;47°44'43''N;00°53'18''W""" & vbCrLf _
        & "     BaseTest(163) =""Lézigné;47°38'14''N;00°17'36''W""" & vbCrLf _
        & "     BaseTest(164) =""Les Verchers-sur-Layon;47°09'17''N;00°17'44''W""" & vbCrLf _
        & "     BaseTest(165) =""Les Ulmes;47°13'12''N;00°10'38''W""" & vbCrLf _
        & "     BaseTest(166) =""Les Rosiers-sur-Loire;47°21'08''N;00°13'27''W""" & vbCrLf _
        & "     BaseTest(167) =""Les Rairies;47°39'06''N;00°12'16''W""" & vbCrLf _
        & "     BaseTest(168) =""Les Ponts-de-Cé;47°25'31''N;00°31'27''W""" & vbCrLf _
        & "     BaseTest(169) =""Les Cerqueux-sous-Passavant;47°06'32''N;00°27'53''W""" & vbCrLf _
        & "     BaseTest(170) =""Les Cerqueux;47°00'03''N;00°38'21''W""" & vbCrLf _
        & "     BaseTest(171) =""Les Alleuds;47°19'13''N;00°24'30''W""" & vbCrLf _
        & "     BaseTest(172) =""Le Vieil-Baugé;47°31'56''N;00°07'09''W""" & vbCrLf _
        & "     BaseTest(173) =""Le Tremblay;47°40'43''N;01°00'59''W""" & vbCrLf _
        & "     BaseTest(174) =""Le Thoureil;47°22'19''N;00°15'55''W""" & vbCrLf _
        & "     BaseTest(175) =""Le Puy-Notre-Dame;47°07'30''N;00°14'01''W""" & vbCrLf _
        & "     BaseTest(176) =""Le Puiset-Doré;47°13'59''N;01°06'51''W""" & vbCrLf _
        & "     BaseTest(177) =""Le Plessis-Macé;47°32'35''N;00°40'19''W""" & vbCrLf _
        & "     BaseTest(178) =""Le Plessis-Grammoire;47°30'04''N;00°25'43''W""" & vbCrLf _
        & "     BaseTest(179) =""Le Pin-en-Mauges;47°15'16''N;00°53'52''W""" & vbCrLf _
        & "     BaseTest(180) =""Le Mesnil-en-Vallée;47°22'00''N;00°56'03''W""" & vbCrLf _
 
        .InsertLines .CountOfLines, "     BaseTest(181) =""Le May-sur-Èvre;47°08'11''N;00°53'28''W""" & vbCrLf _
        & "     BaseTest(182) =""Le Marillais;47°21'32''N;01°04'20''W""" & vbCrLf _
        & "     BaseTest(183) =""Le Louroux-Béconnais;47°31'21''N;00°53'06''W""" & vbCrLf _
        & "     BaseTest(184) =""Le Longeron;47°01'09''N;01°03'28''W""" & vbCrLf _
        & "     BaseTest(185) =""Le Lion-d'Angers;47°37'43''N;00°42'42''W""" & vbCrLf _
        & "     BaseTest(186) =""Le Guédéniau;47°29'43''N;00°02'46''W""" & vbCrLf _
        & "     BaseTest(187) =""Le Fuilet;47°16'55''N;01°06'52''W""" & vbCrLf _
        & "     BaseTest(188) =""Le Fief-Sauvin;47°13'19''N;01°02'25''W""" & vbCrLf _
        & "     BaseTest(189) =""Le Coudray-Macouard;47°11'44''N;00°07'06''W""" & vbCrLf _
        & "     BaseTest(190) =""Le Bourg-d'Iré;47°40'52''N;00°57'57''W""" & vbCrLf _
        & "     BaseTest(191) =""Lasse;47°32'15''N;00°00'42''W""" & vbCrLf _
        & "     BaseTest(192) =""Landemont;47°15'57''N;01°14'27''W""" & vbCrLf _
        & "     BaseTest(193) =""La Varenne;47°18'48''N;01°19'15''W""" & vbCrLf _
        & "     BaseTest(194) =""La Tourlandry;47°08'37''N;00°41'48''W""" & vbCrLf _
        & "     BaseTest(195) =""La Tessoualle;47°00'20''N;00°50'58''W""" & vbCrLf _
        & "     BaseTest(196) =""La Séguinière;47°03'49''N;00°56'19''W""" & vbCrLf _
        & "     BaseTest(197) =""La Salle-et-Chapelle-Aubry;47°15'21''N;00°59'05''W""" & vbCrLf _
        & "     BaseTest(198) =""La Salle-de-Vihiers;47°09'24''N;00°38'05''W""" & vbCrLf _
        & "     BaseTest(199) =""La Romagne;47°03'42''N;01°01'15''W""" & vbCrLf _
        & "     BaseTest(200) =""La Renaudière;47°07'17''N;01°03'30''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(201) =""La Prévière;47°43'06''N;01°10'36''W""" & vbCrLf _
        & "     BaseTest(202) =""La Pouëze;47°33'13''N;00°48'30''W""" & vbCrLf _
        & "     BaseTest(203) =""La Possonnière;47°22'34''N;00°41'06''W""" & vbCrLf _
        & "     BaseTest(204) =""La Pommeraye;47°21'21''N;00°51'33''W""" & vbCrLf _
        & "     BaseTest(205) =""La Poitevinière;47°13'43''N;00°53'46''W""" & vbCrLf _
        & "     BaseTest(206) =""La Plaine;47°04'08''N;00°38'02''W""" & vbCrLf _
        & "     BaseTest(207) =""La Pellerine;47°27'42''N;00°07'26''W""" & vbCrLf _
        & "     BaseTest(208) =""La Ménitré;47°24'12''N;00°16'02''W""" & vbCrLf _
        & "     BaseTest(209) =""La Membrolle-sur-Longuenée;47°33'43''N;00°40'22''W""" & vbCrLf _
        & "     BaseTest(210) =""La Meignanne;47°31'14''N;00°40'05''W""" & vbCrLf _
        & "     BaseTest(211) =""La Lande-Chasles;47°28'13''N;00°03'50''W""" & vbCrLf _
        & "     BaseTest(212) =""La Jumellière;47°16'53''N;00°43'48''W""" & vbCrLf _
        & "     BaseTest(213) =""La Jubaudière;47°10'24''N;00°53'26''W""" & vbCrLf _
        & "     BaseTest(214) =""La Jaille-Yvon;47°43'24''N;00°40'10''W""" & vbCrLf _
        & "     BaseTest(215) =""La Fosse-de-Tigné;47°10'57''N;00°25'43''W""" & vbCrLf _
        & "     BaseTest(216) =""La Ferrière-de-Flée;47°43'55''N;00°50'42''W""" & vbCrLf _
        & "     BaseTest(217) =""La Daguenière;47°25'13''N;00°26'07''W""" & vbCrLf _
        & "     BaseTest(218) =""La Cornuaille;47°30'42''N;00°59'01''W""" & vbCrLf _
        & "     BaseTest(219) =""La Chaussaire;47°12'08''N;01°08'42''W""" & vbCrLf _
        & "     BaseTest(220) =""La Chapelle-sur-Oudon;47°40'46''N;00°49'31''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(221) =""La Chapelle-Saint-Laud;47°36'55''N;00°19'28''W""" & vbCrLf _
        & "     BaseTest(222) =""La Chapelle-Saint-Florent;47°20'04''N;01°03'17''W""" & vbCrLf _
        & "     BaseTest(223) =""La Chapelle-Rousselin;47°12'52''N;00°47'38''W""" & vbCrLf _
        & "     BaseTest(224) =""La Chapelle-Hullin;47°45'33''N;01°04'09''W""" & vbCrLf _
        & "     BaseTest(225) =""La Chapelle-du-Genêt;47°11'02''N;01°01'06''W""" & vbCrLf _
        & "     BaseTest(226) =""La Breille-les-Pins;47°20'29''N;00°04'43''W""" & vbCrLf _
        & "     BaseTest(227) =""La Boissière-sur-Èvre;47°18'09''N;01°04'44''W""" & vbCrLf _
        & "     BaseTest(228) =""La Bohalle;47°25'27''N;00°23'11''W""" & vbCrLf _
        & "     BaseTest(229) =""Juvardeil;47°39'21''N;00°29'50''W""" & vbCrLf _
        & "     BaseTest(230) =""Juigné-sur-Loire;47°24'00''N;00°29'00''W""" & vbCrLf _
        & "     BaseTest(231) =""Jarzé;47°33'22''N;00°13'55''W""" & vbCrLf _
        & "     BaseTest(232) =""Jallais;47°11'52''N;00°52'03''W""" & vbCrLf _
        & "     BaseTest(233) =""Ingrandes;47°24'11''N;00°55'20''W""" & vbCrLf _
        & "     BaseTest(234) =""Huillé;47°38'55''N;00°18'14''W""" & vbCrLf _
        & "     BaseTest(235) =""Grugé-l'Hôpital;47°45'08''N;01°02'18''W""" & vbCrLf _
        & "     BaseTest(236) =""Grez-Neuville;47°21'40''N;00°24'18''W""" & vbCrLf _
        & "     BaseTest(237) =""Grézillé;47°19'37''N;00°20'44''W""" & vbCrLf _
        & "     BaseTest(238) =""Gesté;47°10'53''N;01°06'33''W""" & vbCrLf _
        & "     BaseTest(239) =""Genneteil;47°35'37''N;00°03'00''W""" & vbCrLf _
        & "     BaseTest(240) =""Gennes;47°20'30''N;00°13'54''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(241) =""Gené;47°37'54''N;00°48'08''W""" & vbCrLf _
        & "     BaseTest(242) =""Gée;47°27'27''N;00°13'48''W""" & vbCrLf _
        & "     BaseTest(243) =""Freigné;47°32'57''N;01°07'16''W""" & vbCrLf _
        & "     BaseTest(244) =""Fougeré;47°37'41''N;00°08'49''W""" & vbCrLf _
        & "     BaseTest(245) =""Forges;47°13'11''N;00°14'36''W""" & vbCrLf _
        & "     BaseTest(246) =""Fontevraud-l'Abbaye;47°10'59''N;00°03'02''W""" & vbCrLf _
        & "     BaseTest(247) =""Fontaine-Milon;47°30'09''N;00°14'48''W""" & vbCrLf _
        & "     BaseTest(248) =""Fontaine-Guérin;47°29'16''N;00°11'17''W""" & vbCrLf _
        & "     BaseTest(249) =""Feneu;47°34'19''N;00°35'30''W""" & vbCrLf _
        & "     BaseTest(250) =""Faye-d'Anjou;47°17'36''N;00°31'08''W""" & vbCrLf _
        & "     BaseTest(251) =""Faveraye-Mâchelles;47°14'20''N;00°29'55''W""" & vbCrLf _
        & "     BaseTest(252) =""Étriché;47°39'06''N;00°26'38''W""" & vbCrLf _
        & "     BaseTest(253) =""Épieds;47°08'41''N;00°02'42''W""" & vbCrLf _
        & "     BaseTest(254) =""Écuillé;47°36'58''N;00°33'41''W""" & vbCrLf _
        & "     BaseTest(255) =""Écouflant;47°31'48''N;00°31'47''W""" & vbCrLf _
        & "     BaseTest(256) =""Échemiré;47°33'08''N;00°10'02''W""" & vbCrLf _
        & "     BaseTest(257) =""Durtal;47°40'22''N;00°14'24''W""" & vbCrLf _
        & "     BaseTest(258) =""Drain;47°20'24''N;01°12'18''W""" & vbCrLf _
        & "     BaseTest(259) =""Doué-la-Fontaine;47°11'38''N;00°16'28''W""" & vbCrLf _
        & "     BaseTest(260) =""Distré;47°13'29''N;00°06'38''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(261) =""Dénezé-sous-le-Lude;47°31'51''N;00°08'09''W""" & vbCrLf _
        & "     BaseTest(262) =""Dénezé-sous-Doué;47°14'51''N;00°16'25''W""" & vbCrLf _
        & "     BaseTest(263) =""Denée;47°22'49''N;00°36'24''W""" & vbCrLf _
        & "     BaseTest(264) =""Daumeray;47°42'10''N;00°21'34''W""" & vbCrLf _
        & "     BaseTest(265) =""Cuon;47°28'44''N;00°06'01''W""" & vbCrLf _
        & "     BaseTest(266) =""Coutures;47°21'47''N;00°21'15''W""" & vbCrLf _
        & "     BaseTest(267) =""Courléon;47°23'28''N;00°08'39''W""" & vbCrLf _
        & "     BaseTest(268) =""Courchamps;47°12'06''N;00°09'25''W""" & vbCrLf _
        & "     BaseTest(269) =""Cossé-d'Anjou;47°09'48''N;00°40'36''W""" & vbCrLf _
        & "     BaseTest(270) =""Corzé;47°33'37''N;00°23'24''W""" & vbCrLf _
        & "     BaseTest(271) =""Coron;47°07'42''N;00°38'35''W""" & vbCrLf _
        & "     BaseTest(272) =""Cornillé-les-Caves;47°30'01''N;00°18'01''W""" & vbCrLf _
        & "     BaseTest(273) =""Corné;47°28'17''N;00°20'54''W""" & vbCrLf _
        & "     BaseTest(274) =""Contigné;47°43'48''N;00°30'56''W""" & vbCrLf _
        & "     BaseTest(275) =""Concourson-sur-Layon;47°10'32''N;00°20'21''W""" & vbCrLf _
        & "     BaseTest(276) =""Combrée;47°42'18''N;01°01'48''W""" & vbCrLf _
        & "     BaseTest(277) =""Cléré-sur-Layon;47°05'37''N;00°25'11''W""" & vbCrLf _
        & "     BaseTest(278) =""Clefs;47°37'37''N;00°04'07''W""" & vbCrLf _
        & "     BaseTest(279) =""Cizay-la-Madeleine;47°11'22''N;00°11'10''W""" & vbCrLf _
        & "     BaseTest(280) =""Cholet;47°03'36''N;00°52'42''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(281) =""Chigné;47°35'04''N;00°05'17''W""" & vbCrLf _
        & "     BaseTest(282) =""Cheviré-le-Rouge;47°35'45''N;00°10'51''W""" & vbCrLf _
        & "     BaseTest(283) =""Cherré;47°42'41''N;00°33'43''W""" & vbCrLf _
        & "     BaseTest(284) =""Chenillé-Changé;47°42'01''N;00°39'53''W""" & vbCrLf _
        & "     BaseTest(285) =""Chênehutte-Trèves-Cunault;47°18'33''N;00°09'09''W""" & vbCrLf _
        & "     BaseTest(286) =""Chemiré-sur-Sarthe;47°45'07''N;00°25'52''W""" & vbCrLf _
        & "     BaseTest(287) =""Chemillé;47°12'47''N;00°43'33''W""" & vbCrLf _
        & "     BaseTest(288) =""Chemellier;47°20'30''N;00°21'25''W""" & vbCrLf _
        & "     BaseTest(289) =""Cheffes;47°37'18''N;00°30'23''W""" & vbCrLf _
        & "     BaseTest(290) =""Chazé-sur-Argos;47°37'07''N;00°53'30''W""" & vbCrLf _
        & "     BaseTest(291) =""Chazé-Henry;47°45'12''N;01°06'31''W""" & vbCrLf _
        & "     BaseTest(292) =""Chavaignes;47°32'32''N;00°02'16''W""" & vbCrLf _
        & "     BaseTest(293) =""Chavagnes;47°16'13''N;00°27'13''W""" & vbCrLf _
        & "     BaseTest(294) =""Chaumont-d'Anjou;47°32'28''N;00°16'52''W""" & vbCrLf _
        & "     BaseTest(295) =""Chaudron-en-Mauges;47°17'18''N;00°59'01''W""" & vbCrLf _
        & "     BaseTest(296) =""Chaudefonds-sur-Layon;47°19'37''N;00°42'17''W""" & vbCrLf _
        & "     BaseTest(297) =""Châtelais;47°45'30''N;00°55'34''W""" & vbCrLf _
        & "     BaseTest(298) =""Châteauneuf-sur-Sarthe;47°40'54''N;00°29'14''W""" & vbCrLf _
        & "     BaseTest(299) =""Chartrené;47°29'34''N;00°07'30''W""" & vbCrLf _
        & "     BaseTest(300) =""Charcé-Saint-Ellier-sur-Aubance;47°21'24''N;00°24'33''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(301) =""Chanzeaux;47°15'52''N;00°38'34''W""" & vbCrLf _
        & "     BaseTest(302) =""Chanteloup-les-Bois;47°05'44''N;00°41'03''W""" & vbCrLf _
        & "     BaseTest(303) =""Champtocé-sur-Loire;47°24'45''N;00°51'43''W""" & vbCrLf _
        & "     BaseTest(304) =""Champtoceaux;47°20'16''N;01°15'56''W""" & vbCrLf _
        & "     BaseTest(305) =""Champteussé-sur-Baconne;47°40'07''N;00°39'14''W""" & vbCrLf _
        & "     BaseTest(306) =""Champ-sur-Layon;47°16'02''N;00°34'29''W""" & vbCrLf _
        & "     BaseTest(307) =""Champigné;47°39'54''N;00°34'16''W""" & vbCrLf _
        & "     BaseTest(308) =""Chambellay;47°41'28''N;00°40'56''W""" & vbCrLf _
        & "     BaseTest(309) =""Chalonnes-sur-Loire;47°21'05''N;00°45'45''W""" & vbCrLf _
        & "     BaseTest(310) =""Chalonnes-sous-le-Lude;47°33'35''N;00°10'25''W""" & vbCrLf _
        & "     BaseTest(311) =""Challain-la-Potherie;47°38'13''N;01°02'43''W""" & vbCrLf _
        & "     BaseTest(312) =""Chacé;47°12'56''N;00°04'06''W""" & vbCrLf _
        & "     BaseTest(313) =""Cernusson;47°10'36''N;00°29'02''W""" & vbCrLf _
        & "     BaseTest(314) =""Carbay;47°44'00''N;01°13'05''W""" & vbCrLf _
        & "     BaseTest(315) =""Cantenay-Épinard;47°32'03''N;00°34'02''W""" & vbCrLf _
        & "     BaseTest(316) =""Candé;47°33'42''N;01°02'09''W""" & vbCrLf _
        & "     BaseTest(317) =""Brossay;47°09'54''N;00°12'37''W""" & vbCrLf _
        & "     BaseTest(318) =""Broc;47°34'50''N;00°10'02''W""" & vbCrLf _
        & "     BaseTest(319) =""Brissarthe;47°42'06''N;00°26'57''W""" & vbCrLf _
        & "     BaseTest(320) =""Brissac-Quincé;47°21'21''N;00°26'52''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(321) =""Brion;47°26'33''N;00°09'21''W""" & vbCrLf _
        & "     BaseTest(322) =""Briollay;47°33'54''N;00°30'26''W""" & vbCrLf _
        & "     BaseTest(323) =""Brigné;47°14'33''N;00°22'59''W""" & vbCrLf _
        & "     BaseTest(324) =""Brézé;47°10'19''N;00°03'25''W""" & vbCrLf _
        & "     BaseTest(325) =""Breil;47°28'32''N;00°09'29''W""" & vbCrLf _
        & "     BaseTest(326) =""Brain-sur-Longuenée;47°35'08''N;00°45'39''W""" & vbCrLf _
        & "     BaseTest(327) =""Brain-sur-l'Authion;47°26'48''N;00°24'34''W""" & vbCrLf _
        & "     BaseTest(328) =""Brain-sur-Allonnes;47°18'11''N;00°03'58''W""" & vbCrLf _
        & "     BaseTest(329) =""Bouzillé;47°20'18''N;01°06'34''W""" & vbCrLf _
        & "     BaseTest(330) =""Bourgneuf-en-Mauges;47°18'49''N;00°50'02''W""" & vbCrLf _
        & "     BaseTest(331) =""Bourg-l'Évêque;47°44'12''N;01°00'43''W""" & vbCrLf _
        & "     BaseTest(332) =""Bouillé-Ménard;47°44'33''N;00°58'00''W""" & vbCrLf _
        & "     BaseTest(333) =""Bouchemaine;47°25'24''N;00°36'30''W""" & vbCrLf _
        & "     BaseTest(334) =""Botz-en-Mauges;47°18'28''N;01°00'01''W""" & vbCrLf _
        & "     BaseTest(335) =""Bocé;47°30'27''N;00°04'55''W""" & vbCrLf _
        & "     BaseTest(336) =""Blou;47°21'47''N;00°02'10''W""" & vbCrLf _
        & "     BaseTest(337) =""Blaison-Gohier;47°24'02''N;00°22'12''W""" & vbCrLf _
        & "     BaseTest(338) =""Béhuard;47°22'48''N;00°38'34''W""" & vbCrLf _
        & "     BaseTest(339) =""Bégrolles-en-Mauges;47°08'29''N;00°56'25''W""" & vbCrLf _
        & "     BaseTest(340) =""Bécon-les-Granits;47°30'12''N;00°47'59''W"""
 
        .InsertLines .CountOfLines, "     BaseTest(341) =""Beauvau;47°34'49''N;00°15'18''W""" & vbCrLf _
        & "     BaseTest(342) =""Beausse;47°19'18''N;00°55'33''W""" & vbCrLf _
        & "     BaseTest(343) =""Beaupréau;47°12'10''N;00°59'36''W""" & vbCrLf _
        & "     BaseTest(344) =""Beaulieu-sur-Layon;47°18'41''N;00°35'17''W""" & vbCrLf _
        & "     BaseTest(345) =""Beaufort-en-Vallée;47°26'25''N;00°12'51''W""" & vbCrLf _
        & "     BaseTest(346) =""Beaucouzé;47°28'34''N;00°37'54''W""" & vbCrLf _
        & "     BaseTest(347) =""Bauné;47°29'59''N;00°19'07''W""" & vbCrLf _
        & "     BaseTest(348) =""Baugé;47°32'37''N;00°06'10''W""" & vbCrLf _
        & "     BaseTest(349) =""Baracé;47°38'27''N;00°21'26''W""" & vbCrLf _
        & "     BaseTest(350) =""Avrillé;47°30'28''N;00°35'16''W""" & vbCrLf _
        & "     BaseTest(351) =""Aviré;47°42'25''N;00°47'42''W""" & vbCrLf _
        & "     BaseTest(352) =""Auverse;47°31'08''N;00°03'07''W""" & vbCrLf _
        & "     BaseTest(353) =""Aubigné-sur-Layon;47°12'46''N;00°27'35''W""" & vbCrLf _
        & "     BaseTest(354) =""Artannes-sur-Thouet;47°12'00''N;00°05'37''W""" & vbCrLf _
        & "     BaseTest(355) =""Armaillé;47°42'54''N;01°07'39''W""" & vbCrLf _
        & "     BaseTest(356) =""Antoigné;47°05'06''N;00°06'41''W""" & vbCrLf _
        & "     BaseTest(357) =""Angrie;47°34'15''N;00°58'20''W""" & vbCrLf _
        & "     BaseTest(358) =""Angers;47°28'25''N;00°33'15''W""" & vbCrLf _
        & "     BaseTest(359) =""Andrezé;47°10'19''N;00°57'08''W""" & vbCrLf _
        & "     BaseTest(360) =""Andigné;47°39'59''N;00°46'46''W""" & vbCrLf _
        & "     BaseTest(361) =""Andard;47°27'27''N;00°23'45''W""" & vbCrLf _
        & "     BaseTest(362) =""Ambillou-Château;47°15'51''N;00°20'34''W""" & vbCrLf _
        & "     BaseTest(363) =""Allonnes;47°17'38''N;00°01'28''W""" & vbCrLf _
 
        .InsertLines .CountOfLines, "     For CompA = 1 To UBound(BaseTest)" & vbCrLf _
        & "         ThisWorkbook.Sheets(""Base"").Cells(CompA, 1).Value = Split(BaseTest(CompA), "";"")(0)" & vbCrLf _
        & "         ThisWorkbook.Sheets(""Base"").Cells(CompA, 2).Value = Split(BaseTest(CompA), "";"")(1)" & vbCrLf _
        & "         ThisWorkbook.Sheets(""Base"").Cells(CompA, 3).Value = Split(BaseTest(CompA), "";"")(2)" & vbCrLf _
        & "     Next CompA" & vbCrLf _
        & "End Sub"
    End With
    Application.ScreenUpdating = True
End Sub
et tu dis

Bon courage et bonne journée
__________________
Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------
Jean-Pierre49 est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h26.


 
 
 
 
Partenaires

Hébergement Web