Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

association de chm et de xla

11 réponses
Avatar
jieme
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est déclaré
dans l'interface VB avec outils/propriétes de .... et nom du fichier dans la
boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "\aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la *.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai essayé
de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "\aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc

10 réponses

1 2
Avatar
FS
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce genre
de code :

'================= Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'=================
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est déclaré
dans l'interface VB avec outils/propriétes de .... et nom du fichier dans la
boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la *.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai essayé
de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc




Avatar
jieme
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier 'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce genre
de code :

'================= > Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la *.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc





Avatar
jieme
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier 'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce genre
de code :

'================= > Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la *.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc





Avatar
jieme
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier 'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce genre
de code :

'================= > Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la *.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc





Avatar
FS
Bonsoir,

La macro que je t'ai envoyée n'est appelée nulle part dans ton code,
elle ne peut donc pas "fonctionner" :)
Si l'aide peut être lancée par un bouton nommé btnAide, alors essaye :

Private Sub btnAide_Click()
'ShowHelp
FichierDAide
End Sub

(nous sommes d'accord que le fichier "aide_elements_d'acoustique.chm"
est dans le même dossier que 'macros_acoustiques.xla').

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier 'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce genre
de code :

'================= >> Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >>
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la *.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc








Avatar
jieme
Bonjour,
Encore merci pour ta contribution mais..
ça ne marche toujours pas. Il faut entrer "en dur" le nom du .chm dans la
boite de dialogue
tant pis.

JM

"FS" a écrit dans le message de news:

Bonsoir,

La macro que je t'ai envoyée n'est appelée nulle part dans ton code, elle
ne peut donc pas "fonctionner" :)
Si l'aide peut être lancée par un bouton nommé btnAide, alors essaye :

Private Sub btnAide_Click()
'ShowHelp
FichierDAide
End Sub

(nous sommes d'accord que le fichier "aide_elements_d'acoustique.chm" est
dans le même dossier que 'macros_acoustiques.xla').

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier 'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce genre
de code :

'================= >>> Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >>>
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la
*.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc










Avatar
FS
Bonjour,

> ça ne marche toujours pas.

Ça devrait! Peux-tu zipper sur cjoint ou cijoint une version minimale de
ton projet (xla + chm) ?

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,
Encore merci pour ta contribution mais..
ça ne marche toujours pas. Il faut entrer "en dur" le nom du .chm dans la
boite de dialogue
tant pis.

JM

"FS" a écrit dans le message de news:

Bonsoir,

La macro que je t'ai envoyée n'est appelée nulle part dans ton code, elle
ne peut donc pas "fonctionner" :)
Si l'aide peut être lancée par un bouton nommé btnAide, alors essaye :

Private Sub btnAide_Click()
'ShowHelp
FichierDAide
End Sub

(nous sommes d'accord que le fichier "aide_elements_d'acoustique.chm" est
dans le même dossier que 'macros_acoustiques.xla').

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier 'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce genre
de code :

'================= >>>> Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >>>>
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm", aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la
*.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc













Avatar
jieme
Bonjour,

Voici le lien sur cjoint du .xla et .chm réduits.
Ce que je voudrais c'est utiliser la touche F1 et le lien "aide sur cette
fonction" présent dans la boite de dialogue de la fonction.
Il est vrai que la macro Sub btnAide_Click() est sensée être associée au
lien de la boite de dialogue mais je ne peut pas le vérifier (j'ai récupéré
cette macro sur internet) mais elle "marche" lorsque le fichier d'aide est
affiché dans la boite de dialogue des propriétés de macro (interface VB).

Encore merci de passer du temps sur mon problème et bon week end

JMG

http://cjoint.com/?chj3gtijW6






"FS" a écrit dans le message de news:

Bonjour,

> ça ne marche toujours pas.

Ça devrait! Peux-tu zipper sur cjoint ou cijoint une version minimale de
ton projet (xla + chm) ?

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,
Encore merci pour ta contribution mais..
ça ne marche toujours pas. Il faut entrer "en dur" le nom du .chm dans la
boite de dialogue
tant pis.

JM

"FS" a écrit dans le message de news:

Bonsoir,

La macro que je t'ai envoyée n'est appelée nulle part dans ton code,
elle ne peut donc pas "fonctionner" :)
Si l'aide peut être lancée par un bouton nommé btnAide, alors essaye :

Private Sub btnAide_Click()
'ShowHelp
FichierDAide
End Sub

(nous sommes d'accord que le fichier "aide_elements_d'acoustique.chm"
est dans le même dossier que 'macros_acoustiques.xla').

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier
'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce
genre de code :

'================= >>>>> Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >>>>>
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm",
aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la
*.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc














Avatar
FS
Bonjour,

Dans la macro FichierDAide le paramètre NomAppli n'était pas renseigné
et la variable n'était pas déclarée. J'ai corrigé ça et la procédure
s'exécute sans problème et affiche bien le fichier .chm.

Ceci dit, ta procédure ShowHelp fait ce qu'elle doit faire à partir du
moment où la variable aideaide est bien renseignée. Ne sachant comment
elle est initialisée, j'ai ajouté une valeur par défaut.
Et concernant la touche F1, je pense que la méthode OnKey pourrait être
plus adaptée que ce que tu essayes avec un contrôle RefEdit. Une fois
OnKey renseigné (avec la petite procédure AideF1, qu'il faut lancer à
l'ouverture de ta xla), c'est ton fichier d'aide qui s'affiche dans tous
les contextes, jusqu'à ce que tu lui redonnes ses fonctions habituelles avec

Application.OnKey "{F1}"

Ta xla avec mes suggestions :

http://www.cijoint.fr/cjlink.php?file=cj201002/cijZsAoWya.zip

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Voici le lien sur cjoint du .xla et .chm réduits.
Ce que je voudrais c'est utiliser la touche F1 et le lien "aide sur cette
fonction" présent dans la boite de dialogue de la fonction.
Il est vrai que la macro Sub btnAide_Click() est sensée être associée au
lien de la boite de dialogue mais je ne peut pas le vérifier (j'ai récupéré
cette macro sur internet) mais elle "marche" lorsque le fichier d'aide est
affiché dans la boite de dialogue des propriétés de macro (interface VB).

Encore merci de passer du temps sur mon problème et bon week end

JMG

http://cjoint.com/?chj3gtijW6






"FS" a écrit dans le message de news:

Bonjour,

ça ne marche toujours pas.


Ça devrait! Peux-tu zipper sur cjoint ou cijoint une version minimale de
ton projet (xla + chm) ?

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,
Encore merci pour ta contribution mais..
ça ne marche toujours pas. Il faut entrer "en dur" le nom du .chm dans la
boite de dialogue
tant pis.

JM

"FS" a écrit dans le message de news:

Bonsoir,

La macro que je t'ai envoyée n'est appelée nulle part dans ton code,
elle ne peut donc pas "fonctionner" :)
Si l'aide peut être lancée par un bouton nommé btnAide, alors essaye :

Private Sub btnAide_Click()
'ShowHelp
FichierDAide
End Sub

(nous sommes d'accord que le fichier "aide_elements_d'acoustique.chm"
est dans le même dossier que 'macros_acoustiques.xla').

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier
'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce
genre de code :

'================= >>>>>> Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >>>>>>
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm",
aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la
*.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc
















Avatar
FS
Re,

> Ce que je voudrais c'est utiliser la touche F1 et le lien "aide sur
> cette fonction" présent dans la boite de dialogue de la fonction.

Je n'ai pas répondu à la deuxième partie de cette phrase.
Pour pouvoir utiliser ce lien, tes fonctions devraient être développées
dans une .xll et non une .xla.
Les xll sont des sortes de dll pour Excel, écrites en C ou C++.
Ce que souhaites n'est donc pas possible dans ton cas. Une bidouille
existe sur le site de Laurent Longre :

http://xcell05.free.fr/pages/telecharge/index.html#FunCustomize

et, sur le même site, une page que les xll et l'API-C d'Excel :

http://xcell05.free.fr/pages/prog/api-c.htm

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Voici le lien sur cjoint du .xla et .chm réduits.
Ce que je voudrais c'est utiliser la touche F1 et le lien "aide sur cette
fonction" présent dans la boite de dialogue de la fonction.
Il est vrai que la macro Sub btnAide_Click() est sensée être associée au
lien de la boite de dialogue mais je ne peut pas le vérifier (j'ai récupéré
cette macro sur internet) mais elle "marche" lorsque le fichier d'aide est
affiché dans la boite de dialogue des propriétés de macro (interface VB).

Encore merci de passer du temps sur mon problème et bon week end

JMG

http://cjoint.com/?chj3gtijW6






"FS" a écrit dans le message de news:

Bonjour,

ça ne marche toujours pas.


Ça devrait! Peux-tu zipper sur cjoint ou cijoint une version minimale de
ton projet (xla + chm) ?

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,
Encore merci pour ta contribution mais..
ça ne marche toujours pas. Il faut entrer "en dur" le nom du .chm dans la
boite de dialogue
tant pis.

JM

"FS" a écrit dans le message de news:

Bonsoir,

La macro que je t'ai envoyée n'est appelée nulle part dans ton code,
elle ne peut donc pas "fonctionner" :)
Si l'aide peut être lancée par un bouton nommé btnAide, alors essaye :

Private Sub btnAide_Click()
'ShowHelp
FichierDAide
End Sub

(nous sommes d'accord que le fichier "aide_elements_d'acoustique.chm"
est dans le même dossier que 'macros_acoustiques.xla').

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Merci beaucoup,

Par contre ça ne fonctionne toujours pas. J'ai placé la macro dans le
module.
mais le fichier d'aide n'est toujours pas détecté...

voici un bout du code (une fonction) du fichier
'macros_acoustiques.xla'
pour exemple (j'enleve toutes les declarations Dim):


Option Explicit
Option Base 1
'
Sub FichierDAide()
'macro fournie par Frédéric Sigonneau le 31/10/2010
'
NomAppli = "macros_acoustiques"
Fichier = "aide_elements_d'acoustique.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier
If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub

Private Sub ShowHelp()
Application.Help chemFichier, aideaide
End Sub

Private Sub btnAide_Click()
ShowHelp
End Sub

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub

Function dB2Pa(dB)
'dB2Pa fonction
'Macro enregistrée le 17/10/1997
'utilisation:convertir des valeurs dB (acoustique) en Pa
'la reference du decibel acoustique etant le seuil de l'audition
'fixé à 2. 10-5 N/m2 dans l'air à 20°C
'argument: valeur en dB
'
'index du fichier d'aide associé
aideaide = 1000
'
dB2Pa = 10 ^ (dB / 20) * 0.00002
End Function



Merci d'avance si vous avez un conseil,
Bonne soirée.





"FS" a écrit dans le message de news:
%
Bonjour,

Pour lancer un fichier d'aide (chm) associé à un xla, j'utilise ce
genre de code :

'================= >>>>>> Sub FichierDAide()
Dim Fichier, chemFichier
Fichier = "Aide.chm"
chemFichier = ThisWorkbook.Path & "" & Fichier

If Dir(chemFichier) <> "" Then
Shell "C:WINDOWShh.EXE " & chemFichier, 1
Else
MsgBox "Le fichier """ & Fichier & """ n'a pu être trouvé." _
& vbLf & "Vérifiez qu'il est bien présent dans le dossier " _
& vbLf & "de l'application et qu'il n'a pas été renommé.", _
vbOKOnly, NomAppli
End If
End Sub
'================= >>>>>>
FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

jieme a écrit :
Bonjour,

Que faudrait-il faire ?
Je cherche a associer un fichier d'aide *.chm a un dossier de macro
complementaires *.xla.
Cela marche parfaitement lorsque le path et le nom de la *.chm est
déclaré dans l'interface VB avec outils/propriétes de .... et nom du
fichier dans la boite de dialogue.
Par contre lorsque je tente de programmer avec:

Private Sub ShowHelp()
Application.Help ThisWorkbook.Path & "aide des macros.chm",
aideaide
End Sub
'pour le nom du fichier d'aide qui est dans le même dossier que la
*.xla

Private Sub btnAide_Click()
ShowHelp
End Sub
'pour l'acces par le bouton d'aide

Private Sub RefEdit1_KeyDown(KeyCode As Integer, ByVal Shift As
Integer)
If KeyCode = 112 Then ShowHelp
End Sub
'pour l'acces par la touche F1

cela ne marche pas ! J'ai mis les Sub dans le corps du module, j'ai
essayé de mettre:
ThisWorkbook.VBProject.HelpFile = ThisWorkbook.Path _
& "aide des macros.chm"
dans le code du workbook, mais rien n'y fait..
Pourriez vous me donner une piste ?

Merci d''avance et bon week-end,
Jean-Marc
















1 2