Coincé bêtement avec worksheet et codename

Bonsoir,

je dois être coincé bêtement mais à cette heure ci mon cerveau ne peux plus réfléchir...

Soit mon code ci dessous, j'ai besoin d'utiliser la proriété codename dans la première procédure, pour pouvoir initialiser le "Set shFrom = Sheet28", donc en gros remplacer "Sheet28" par le codename, le problème c'est que le codename est un string et je souhaite avoir un objet worksheet, du coup je ne sais pas comment faire dans ma procédure "export" pour initialiser cela.

Est ce que quelqu'un aurait une idée à me proposer ?

Merci

Sub Btn_Export_results()
Dim x As Integer

'**********************************
'Ne plus afficher les alertes genre overwrite un fichier sur un autre !
Application.DisplayAlerts = False

'**************************************
'Optimiser la vitesse d'execution, ne pas activer l'affichage à chauqe routine!
Application.ScreenUpdating = False

For x = 1 To 3 'Sheets.Count

'MsgBox (Worksheets(x).CodeName)

export (Worksheets(x).CodeName)

Next x

Application.DisplayAlerts = True
Application.ScreenUpdating = True

End Sub

'**********///////////////////////**************************/////////////////////////////***********************

Sub export(sheetname As Worksheet)

Dim newWst As Worksheet, curCell As Range
Dim Fichier As String, Fichier_pdf As String, tMp As String, tMp2 As String, rePertoire As String
Dim shFrom As Worksheet, shNew As Worksheet
Dim iMg As Object, iMg_copied As Object, c As Range
Dim test As Double

'**********************************
'Ici en utilisant shfrom au lieu the thisworkbook.sheets("fuille").... cela me permet de m affranchir d un eventuel changement de nom d onglets
'Ici c'est/ce sont les différents onglets ou venir chercher les informations ligne après ligne
Set shFrom = Sheet28
'Set curCellToModify = ThisWorkbook.Sheets("Feuil1").Range("C6")
Set curCell = shFrom.Range("C3")

Bonjour,

Worksheet.CodeName, propriété

Cette propriété renvoie le nom de code de l'objet. Type de données String en lecture seule.

Sub export(sheetname As String)

Bonsoir,

Est-ce que cela ne serait pas ça ?

Sub Btn_Export_results()
Dim x As Object

'**********************************
'Ne plus afficher les alertes genre overwrite un fichier sur un autre !
Application.DisplayAlerts = False

'**************************************
'Optimiser la vitesse d'execution, ne pas activer l'affichage à chauqe routine!
Application.ScreenUpdating = False

For Each x In ActiveWorkbook.Sheets
export x
Next x

Application.DisplayAlerts = True
Application.ScreenUpdating = True

End Sub

'**********///////////////////////**************************/////////////////////////////***********************

Sub export(sheetname As Worksheet)

Dim newWst As Worksheet, curCell As Range
Dim Fichier As String, Fichier_pdf As String, tMp As String, tMp2 As String, rePertoire As String
Dim shFrom As Worksheet, shNew As Worksheet
Dim iMg As Object, iMg_copied As Object, c As Range
Dim test As Double

'**********************************
'Ici en utilisant shfrom au lieu the thisworkbook.sheets("fuille").... cela me permet de m affranchir d un eventuel changement de nom d onglets
'Ici c'est/ce sont les différents onglets ou venir chercher les informations ligne après ligne
Set shFrom = Sheet28
'Set curCellToModify = ThisWorkbook.Sheets("Feuil1").Range("C6")
Set curCell = shFrom.Range("C3")

Bonsoir Pat,

je t'ai oublié, ca fonctionne, j'avais implémenté la modif proposée sans repasser par le forum, merci pour ta solution.

Bon week end

Rechercher des sujets similaires à "coince betement worksheet codename"