Problème Excel2007
michel70
-
Patrice33740 Messages postés 8400 Date d'inscription Statut Membre Dernière intervention -
Patrice33740 Messages postés 8400 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous
Je rencontre un problème sur l'onglet "Développeur"
J'ai de nombreuses macros en service,et pour commander beaucoup d'entre elles, je créais des boutons de commande,dans l'onglet précité,avec "insérer des contrôles et activer la création",et je notais le nom de la macro dans la cellule du bouton.Depuis hier,mauvaise surprise : Toutes les cellules en question sont vides,plus de bouton ni de nom.
Je retourne sur "développeur",et,plus moyen d'utiliser l'onglet "insertion des contrôles"il ne répond plus aux clics (son onglet est terne ,comme si un brouillard le recouvrait)?
Comme je suis loin d'être un aigle en informatique,je fais appel aux compétences des habitués du forum.
Merci à ceux qui me répondront
michel70
Je rencontre un problème sur l'onglet "Développeur"
J'ai de nombreuses macros en service,et pour commander beaucoup d'entre elles, je créais des boutons de commande,dans l'onglet précité,avec "insérer des contrôles et activer la création",et je notais le nom de la macro dans la cellule du bouton.Depuis hier,mauvaise surprise : Toutes les cellules en question sont vides,plus de bouton ni de nom.
Je retourne sur "développeur",et,plus moyen d'utiliser l'onglet "insertion des contrôles"il ne répond plus aux clics (son onglet est terne ,comme si un brouillard le recouvrait)?
Comme je suis loin d'être un aigle en informatique,je fais appel aux compétences des habitués du forum.
Merci à ceux qui me répondront
michel70
12 réponses
-
je créais des boutons de commande,dans l'onglet précité
Pas dans l'onglet mais sur la feuille excel ?
Je retourne sur "développeur",et,plus moyen d'utiliser l'onglet "insertion des contrôles"il ne répond plus aux clics (son onglet est terne ,comme si un brouillard le recouvrait)
Le classeur est-il ouvert ? -
Bonjour Patrice33740
1 ) D'accord,je créais des boutons dans la feuille excel,à l'aide de l'onglet précité
2 ) oui,le classeur est ouvert
A plus
michel70 -
Le classeur ou la feuille est peut-être protégé (Révision / Oter la protection)
-
Bonsoir Patrice33740
Non,ni la feuille ni le classeur ne sont protégés
C'est le deuxième jour que j'essaie de remettre le truc en route,sans succès,et je ne vois toujours pas où est le problème.Ce n'est pas surprenant,compte de mon très faible niveau en informatique,,j'espérais que des gens plus compétents pourraient m'aider ,mais,apparemment,,soit la question ne les intéresse pas,ou ils ne savent pas ,eux non plus,d'où vient ce bug.
Je vais encore essayer,si je n'y arrive pas,je ferai appel à un technicien dépanneur,mais compte tenu des tarifs pratiqués,bonjour la facture !
Je te remercie de t'être penché sur le pbm,et te dis : peut-être à plus.
michel70 -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Est-ce qu'avec un classeur vierge (nouveau), la commande Insertion des contrôles est activée ?
-
Bonjour,
personnellement je penserais à un classeur avec macro créé avec Office 2007 mais enregistré sous le format de compatibilité 97-2003, ou alors en xlsx à la place de xlsm.
Cordialement.-
-
-
-
J'ai proposé ça car c'était ce qui me semblait le plus simple. Je sais qu'entre un fichier Word enregistré en mode de compatibilité et un autre enregistré en 2007, dans le premier je ne pourrais pas utiliser l'éditeur d'équations, dans le second je pourrais.
Je suis parti de cette déduction, mais apparemment je me suis craqué.
Désolé pour la mauvaise analyse.
-
-
Bonjour Patrice33740, et bonjour chossettes9
Absent cet après midi,je découvre vos posts
Je vérifierai demain si les macros fonctionnent dans un nouveau classeur.
Merci à tous deux et à plus.
michel70 -
Bonjour à tous
Patrice33740
Effectivement,sur un nouveau classeur,tout fonctionne normalement.
Qu'est il arrivé à mon classeur ? Un virus ?
A plus
michel70 -
Il est très nettement plus probable que ce soit une mauvaise manip ou un incident lors de l'enregistrement plutôt qu'un virus
Selon l'état et la contenance de ton fichier, tu peux essayer de tout recopier dans un nouveau fichier, y compris les macros si elles existent encore.
Ne copie pas les feuilles (via l'onglet) mais toutes les cellules, attention au formules qui pourraient générer des liaisons avec l'ancien fichier
-
Bonsoir Patrice33740
J'ai recopié l'ensemble du classeur dans un nouveau classeur vierge.
La commande "insertion de contrôles" fonctionne
J'ai enregistré les macros dans l'onglet VBA du nouveau classeur,car elles ne l'ont pas été lors de la copie.Maintenant depuis deux jours je reprends mes formules une à une,ce qui me prend beaucoup de temps.
J'ai bon espoir,mais je ne sais pas si je suis sorti de l'auberge,car je constate que certaines macros,bien enregistrées dans le classeur,ne fonctionnent pas.Je reprends
la mise en place des boutons de commande,un à un.
Enfin,j'espère arriver à un résultat positif.
Je te tiendrai au courant.
A plus
michel70 -
Bonjour,
Cette macro, à mettre dans un nouveau fichier, permet de régénérer les principaux éléments d'un classeur partiellement corrompu (sauf les macros) dans un nouveau classeur. Elle copie notamment les styles, les formats, les formules, les noms, les formes, les commentaires
Private Sub RégénérerCLasseur() Dim wbkOrg As Workbook Dim wbkDst As Workbook Dim wshOrg As Worksheet Dim wshDst As Worksheet Dim stlOrg As Style Dim stlDst As Style Dim cmtDst As Comment Dim shpDst As Shape Dim Nom As Name Dim Nomfichier As String 'Sélection du fichier On Error Resume Next Application.FileDialog(msoFileDialogFilePicker).AllowMultiSelect = False Application.FileDialog(msoFileDialogFilePicker).Show Nomfichier = Application.FileDialog(msoFileDialogFilePicker).SelectedItems(1) If Nomfichier = "" Then Exit Sub On Error GoTo 0 Set wbkOrg = Workbooks.Open(Nomfichier) Set wbkDst = Workbooks.Add(xlWBATWorksheet) 'Fusionner les styles Application.DisplayAlerts = False 'pour éviter le messages concernant les styles de même nom wbkDst.Styles.Merge Workbook:=wbkOrg Application.DisplayAlerts = True 'créer les feuilles For Each wshOrg In wbkOrg.Worksheets Set wshDst = wbkDst.Worksheets(wshOrg.Index) wshDst.Name = wshOrg.Name wshDst.Tab.ColorIndex = wshOrg.Tab.ColorIndex 'copier les principales options d'affichage(quadrillage, onglets, ...) wshDst.Activate wshOrg.Activate Windows(wbkDst.Name).Zoom = Windows(wbkOrg.Name).Zoom Windows(wbkDst.Name).DisplayGridlines = Windows(wbkOrg.Name).DisplayGridlines Windows(wbkDst.Name).DisplayHeadings = Windows(wbkOrg.Name).DisplayHeadings Windows(wbkDst.Name).DisplayWorkbookTabs = Windows(wbkOrg.Name).DisplayWorkbookTabs Windows(wbkDst.Name).DisplayHorizontalScrollBar = Windows(wbkOrg.Name).DisplayHorizontalScrollBar Windows(wbkDst.Name).DisplayVerticalScrollBar = Windows(wbkOrg.Name).DisplayVerticalScrollBar Windows(wbkDst.Name).DisplayZeros = Windows(wbkOrg.Name).DisplayZeros 'feuille suivante If wbkOrg.Worksheets.Count > wbkDst.Worksheets.Count Then wbkDst.Worksheets.Add After:=wshDst Next wshOrg 'copier les noms For Each Nom In wbkOrg.Names If InStr(1, Nom.RefersTo, "#REF") = 0 Then wbkDst.Names.Add Nom.Name, Nom.RefersTo Next Nom 'copier le contenu de chaque feuille For Each wshOrg In wbkOrg.Worksheets Set wshDst = wbkDst.Worksheets(wshOrg.Name) 'copier toutes les cellules Application.DisplayAlerts = False 'pour éviter les messages concernant la copie des noms wshOrg.Cells.Copy Destination:=wshDst.Cells Application.DisplayAlerts = True 'Copier les formules (supprime les éventuelles liaisons crées avec l'ancien classeur) wshDst.UsedRange.Formula = wshOrg.UsedRange.Formula 'repositionner les commentaires For Each cmtDst In wshDst.Comments cmtDst.Shape.Top = wshOrg.Range(cmtDst.Parent.Address).Comment.Shape.Top cmtDst.Shape.Left = wshOrg.Range(cmtDst.Parent.Address).Comment.Shape.Left Next cmtDst 'repositionner les objets For Each shpDst In wshDst.Shapes If shpDst.Type <> msoComment Then shpDst.LockAspectRatio = msoFalse shpDst.Height = wshOrg.Shapes(shpDst.Name).Height shpDst.Width = wshOrg.Shapes(shpDst.Name).Width shpDst.Top = wshOrg.Shapes(shpDst.Name).Top shpDst.Left = wshOrg.Shapes(shpDst.Name).Left shpDst.LockAspectRatio = wshOrg.Shapes(shpDst.Name).LockAspectRatio End If Next shpDst Next wshOrg wbkOrg.Saved = True wbkDst.Worksheets(1).Activate End Sub
-
voici le fichier correspondant : https://www.cjoint.com/?AHFa1LnJ28a
-
-
Bonjour Patrice33740
Excuse mon silence dù à des ennuis de santé,et un petit séjour en clinique.
Je découvre ton envoi du 31/8.
Je vais donc essayer et voir.
Comme,à mon grand regret,je ne dois pas m'éterniser devant mon écran,je te dirai ce qu 'il en est dans quelques jours.
Très sincèrement,MERCI
A plus
michel70