Merci pour ta réponse. Ok pour 26, autant pour le bug de mon doigt
Left indentifie bien l'initiale, la MsgBox l'affiche, mais je bute sur l'ouverture de la feuille
Ci-dessous mon code, la dernière ligne me renvoie que l'indice ne fait pas partie de la sélection. Je ne trouve pas l'erreur.
'On a 2 répertoires et leur contenu : " Source " contenant les fiches -contact
'" Destination " contenant le fichier " BDD_Do_RDV "
'Ce fichier comporte 26 onglets correspondant aux 26 lettres de l'alphabet
'Ces deux répertoires sont encapsulés dans un répertoire "System_Do_RDV"
'qu'on place sous la racine pour faire fonctionner la macro.
'Etapes de la macro:
'On ouvre les fiches contact et leur onglet " TransfertBDD "
'On détecte l'initiale du Nom (cellule E)
'On ouvre le fichier " BDD_Do_RDV " à l'onglet de cette initiale
' On recherche la 1° ligne vide,
'On repart dans la fiche contact
'On sélectionne les cellules E, F, K, L, AS et AV qu'on copie,
'On active le fichier "BDD_Do_RDV"
'On colle les cellules sélectionnées dans les cellules A à F
'On recherche le doublonnage, et si oui, on annule le collage,
'On passe à la fiche suivante,
'Après la dernière fiche, on affiche un message de fin et d'enregistrement.
Dim Var As Workbook
Dim War As Workbook
Dim FichierSource As String
Dim NomFichierSource As String
Dim Init As String
'Init = Initiale du nom
Dim NF As Integer
' NF= N° de fichier dans le dossier Source
Dim OC As Integer
' OC = Nombre de lignes occupées
Dim NL As Integer
' NL = N° de ligne dans la feuille active du fichier Destination/BDD_ Rappels_RDV = NF + Nombre de lignes occupées
'On définit les variables et on initie la boucle de recherche
NF = 1
NomFichierSource = Dir("C:\System_Do_RDV\Source" & "\*.*")
Do While NomFichierSource <> ""
Set Var = GetObject("C:\System_Do_RDV\Source" & "\" & NomFichierSource)
Set War = GetObject("C:\System_Do_RDV\Destination\" & "BDD_Do_RDV.xls")
'On ouvre le fichier source et l'onglet "Transfert_BDD"
Var.Activate
Sheets("TransfertBDD").Select
'On sélectionne la cellules E
Range("E2").Select
'On identifie l'initiale du nom pour ouvrir l'onglet correspondant
Init = Left((Range("E" & 2).Value), 1)
MsgBox ("Init=" & (Init))
'On ouvre le fichier "Destination / BDD_Do_RDV" à l'onglet correspondant à l'initiale
'et on compte le nombre de lignes occupées
War.Activate
Sheets("Init").Select