Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Récupération propriété title - .xla ?

  • Initiateur de la discussion Initiateur de la discussion starz
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

starz

XLDnaute Occasionnel
Bonjour,
Je dois mettre à jour le titre d'une centaine de document excel.
Ce titre est présent dans la cellule i4 de la feuil1.

Pourriez vous m'aider sans ouvrir chaque document (si possible j'espère) à concevoir une macro (xla peut être) ou autre, afin de parvenir à mes modifications le plus rapidement et le plus simplement possible.

merci de votre aide

voici un bout de macro que j'avais récupérer ici mais ça m'oblige à l'intégrer à chaque document :

Code:
Private Sub Workbook_Before_Close(Cancel As Boolean)
ThisWorkbook.BuiltinDocumentProperties("Title").Value = Sheets("Feuil1").Range("i4").Value 
End Sub
 
Re : Récupération propriété title - .xla ?

Re 🙂,
Dans ce cas ni ton code ni le mien ne font le job 😉

Mais celui-ci oui 😉 (aie la crampe )
Crampes aux chevilles, ou après les 100 InputBox à remplir 😀.
Non, je persiste. Je pense que (exemple, les devoirs de ses 100 élèves rendus sous Excel, mettez votre nom en case "I4") les fichiers sont déjà renseignés. Mais notre ami impatient va bien nous départager 😛.
A bientôt et XLDente journée 😎
 
Re : Récupération propriété title - .xla ?

Merci,
JNP est le vainqueur pour son premier code.
En effet l'exemple sur les élèves est correct, le nom était déjà présent dans la case.

Encore merci à vous tous .

Bonne soirée

EDIT : en faisant la manip j'ai remarqué un ptit bug parmis toutes les copies des élèves.
Certain ont mis leur nom dans la case H4.
Si je modifie la macro ça fonctionne mais ça efface les fichiers avec le titre en I4.

Vous avez une solution ?
 
Dernière édition:
Re : Récupération propriété title - .xla ?

Re

C'est donc JNP qui avait raison 😉

Pourquoi avoir mis et juste après retiré ton fichier de 1996 ? 😉

Normalement cela doit fonctionner
Code:
Sub renommetitre3()
Dim WB As Workbook, Chemin$, nfich$, Titre$
Chemin = "C:\temp\" 'changer le nom du dossier selon vos besoins
nfich = Dir(Chemin & "*.xls")
Do While nfich <> ""
    Workbooks.Open Filename:=Chemin & nfich
    Titre = Feuil1.Range("I4").Text
    Workbooks(nfich).BuiltinDocumentProperties("Title").Value = Titre
    Workbooks(nfich).Close True
nfich = Dir
Loop
End Sub
 
Re : Récupération propriété title - .xla ?

nos réponses ont du se croisé 18h15 - 18h17 , regarde le post du dessus.

J'ai enlevé le fichier car en faite vous n'en avez pas besoin 😛

par contre il reste un loup 😕
 
Re : Récupération propriété title - .xla ?

Re 🙂,
Ayons le triomphe modeste (sonnez trompettes 😛). Remplace
Code:
Titre = Sheets(1).Range("I4").Text
par
Code:
If Sheets(1).Range("I4").Text <> "" Then
    Titre = Sheets(1).Range("I4").Text
Else
    Titre = Sheets(1).Range("H4").Text
End
Bonne journée 😎
 
Re : Récupération propriété title - .xla ?

Bonjour


Histoire de saluer JNP 😉 (et parce j'aime l'IIF)

Je remplacerai par
Code:
 Titre = IIF(Sheets(1).Range("I4").Text <> "",Sheets(1).Range("I4").Text,Sheets(1).Range("H4").Text)

En version non recommandée par la VBA Academy
Code:
Sub test()
Dim Titre$
With Sheets(1).Range("I4"): Titre = IIf(.Text <> "", .Text, .Offset(, -1).Text): End With
MsgBox Titre
End Sub

en version classique
Code:
Sub test()
Dim Titre$
With Sheets(1).Range("I4")
Titre = IIf(.Text <> "", .Text, .Offset(, -1).Text)
End With
MsgBox Titre
End Sub
 
Dernière édition:
Re : Récupération propriété title - .xla ?

Re

Histoire d'honorer le JNP triomphant 😉

Code:
Sub testJNP()
With Sheets(1).Range("I4")
    If .Text <> "" Then
        titre = .Text
    Else
        titre = .Offset(, -1).Text
    End If
End With
End Sub

PS: JNP , il manque le If à ton End (dans ton message de 09h12)
 
Re : Récupération propriété title - .xla ?

Re 🙂,
Effectivement VBACrumble, il manque mon cypré après mon End 😛. Mea Culpa 😉. C'est la rançon de la gloire, j'ai touché mon End à crédit 😀.
Bonne soirée 😎
 
Re : Récupération propriété title - .xla ?

Merci à vous tous :

POur conclure j'utilise ce code car les autres j'ai pas tous compris :

Code:
Private Sub CommandButton1_Click()
Dim WB As Workbook, Chemin$, nfich$, Titre$
Chemin = "C:\temp\" 'changer le nom du dossier selon vos besoins
nfich = Dir(Chemin & "*.xls")
Do While nfich <> ""
    Workbooks.Open Filename:=Chemin & nfich
    If Sheets(1).Range("I4").Text <> "" Then
    Titre = Sheets(1).Range("I4").Text
Else
    Titre = Sheets(1).Range("H4").Text
End If
    Workbooks(nfich).BuiltinDocumentProperties("Title").Value = Titre
    Workbooks(nfich).Close True
nfich = Dir
Loop
End Sub

par contre pour le chemin si le fichier macro est dans le même dossier ç ne fonctionne pas, voici le code :

Code:
Private Sub CommandButton2_Click()
Dim WB As Workbook, Chemin$, nfich$, Titre$
Chemin = ThisWorkbook.Path & "\"  'changer le nom du dossier selon vos besoins
nfich = Dir(Chemin & "*.xls")
Do While nfich <> ""
    Workbooks.Open Filename:=Chemin & nfich
    If Sheets(1).Range("I4").Text <> "" Then
    Titre = Sheets(1).Range("I4").Text
Else
    Titre = Sheets(1).Range("H4").Text
End If
    Workbooks(nfich).BuiltinDocumentProperties("Title").Value = Titre
    Workbooks(nfich).Close True
nfich = Dir
Loop
End Sub

bonne soirée
 
Re : Récupération propriété title - .xla ?

Bonjour


Essayes ceci:

Code:
Private Sub CommandButton2_Click()
Dim WB As Workbook, Chemin$, nfich$, Titre$
Chemin = ThisWorkbook.Path & "\"  'changer le nom du dossier selon vos besoins
nfich = Dir(Chemin & "*.xls")
Do While nfich <> ""
[COLOR="Blue"]If nfich = ThisWorkBook.Name Then Exit Sub[/COLOR]
    Workbooks.Open Filename:=Chemin & nfich
    If Sheets(1).Range("I4").Text <> "" Then
    Titre = Sheets(1).Range("I4").Text
Else
    Titre = Sheets(1).Range("H4").Text
End If
    Workbooks(nfich).BuiltinDocumentProperties("Title").Value = Titre
    Workbooks(nfich).Close True
nfich = Dir
Loop
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
596
Réponses
16
Affichages
2 K
E
Réponses
0
Affichages
1 K
estivill
E
C
Réponses
1
Affichages
4 K
Conrad13
C
D
Réponses
2
Affichages
2 K
devimen2
D
W
  • Question Question
Réponses
9
Affichages
2 K
wenders frédéric
W
S
Réponses
10
Affichages
2 K
sardaucar
S
N
Réponses
4
Affichages
923
N
A
Réponses
10
Affichages
2 K
Ayuri
A
S
Réponses
1
Affichages
3 K
silverskin
S
L
Réponses
5
Affichages
2 K
lumiexcel
L
J
Réponses
0
Affichages
993
joelle2302
J
N
  • Question Question
Réponses
5
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…