Bonjour,
Je travaille sur 2 fichiers :
l'un contient les 38 000 villes de france avec un numéro d'ordre (insee.xls)
l'autre des adresses avec le nom des villes (mag_brico.xls)
Le but est de remplacer le nom des villes dans mag_brico par le numéro d'ordre de la ville
Quand vous lirez mon code, vous verrez qu'il y a pas mal de triche das tout ça... (à lire plus bas)
Du coup le problème est un message d'erreur de type "espace insuffisant pour la pile", un truc dans le genre...
Questions :
1 : Est-il nécessaire de gérer les erreurs type
Si le nom de la ville recherché n'existe pas on oublie et on passe à la suite
Je sais faire du If Then, mais là j'ai une variable au milieu. Je ne sais pas lui dire
For Each cell In Selection
If selection.value=Variable Then
cell.Value = Replace(cell, Vil, Num, 1)
Else...
2 : Ensuite, je ne sais pas comment lui dire de changer de ville recherche. D'où la triche avec la suppression de la cellule de recherche initiale et A1 puis xl down
3 : plutôt que de demander l'exécution de la même macro sous un autre nom perpétuellement je sais qu'il y a une fonction qui fait ça
DoUntil ... Loop, mais je ne vois pas comment faire
Tout ça n'est pas très clean. Quelqu'un pourrait-il m'aider à faire le ménage ?
Merci pour votre aide !
Sub essai()
' Déclaration des variables
Dim Vil As String
Dim Num As String
' Recherche des variables
'La cellule A2 est vide
Vil = Range("A1").End(xlDown)
Num = Range("A1").End(xlDown).Offset(0, 5)
'Zone de remplacement
Windows("Mag_brico.xls").Activate
Range("F2").Select
Range(Selection, Selection.End(xlDown)).Select
'Remplacement
For Each cell In Selection
cell.Value = Replace(cell, Vil, Num, 1)
Next cell
Windows("insee.xls").Activate
Range("A1").End(xlDown).Select
ActiveCell.ClearContents
Application.Run ("essai2")
End Sub
Sub essai2()
même chose puis
Application.Run ("essai")
End Sub
Je travaille sur 2 fichiers :
l'un contient les 38 000 villes de france avec un numéro d'ordre (insee.xls)
l'autre des adresses avec le nom des villes (mag_brico.xls)
Le but est de remplacer le nom des villes dans mag_brico par le numéro d'ordre de la ville
Quand vous lirez mon code, vous verrez qu'il y a pas mal de triche das tout ça... (à lire plus bas)
Du coup le problème est un message d'erreur de type "espace insuffisant pour la pile", un truc dans le genre...
Questions :
1 : Est-il nécessaire de gérer les erreurs type
Si le nom de la ville recherché n'existe pas on oublie et on passe à la suite
Je sais faire du If Then, mais là j'ai une variable au milieu. Je ne sais pas lui dire
For Each cell In Selection
If selection.value=Variable Then
cell.Value = Replace(cell, Vil, Num, 1)
Else...
2 : Ensuite, je ne sais pas comment lui dire de changer de ville recherche. D'où la triche avec la suppression de la cellule de recherche initiale et A1 puis xl down
3 : plutôt que de demander l'exécution de la même macro sous un autre nom perpétuellement je sais qu'il y a une fonction qui fait ça
DoUntil ... Loop, mais je ne vois pas comment faire
Tout ça n'est pas très clean. Quelqu'un pourrait-il m'aider à faire le ménage ?
Merci pour votre aide !
Sub essai()
' Déclaration des variables
Dim Vil As String
Dim Num As String
' Recherche des variables
'La cellule A2 est vide
Vil = Range("A1").End(xlDown)
Num = Range("A1").End(xlDown).Offset(0, 5)
'Zone de remplacement
Windows("Mag_brico.xls").Activate
Range("F2").Select
Range(Selection, Selection.End(xlDown)).Select
'Remplacement
For Each cell In Selection
cell.Value = Replace(cell, Vil, Num, 1)
Next cell
Windows("insee.xls").Activate
Range("A1").End(xlDown).Select
ActiveCell.ClearContents
Application.Run ("essai2")
End Sub
Sub essai2()
même chose puis
Application.Run ("essai")
End Sub