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

Pb ecriture dans un fichier .ini a partir de word 2000

2 réponses
Avatar
Jed
Bonjour à tous,

Ci dessous quelques lignes de codes qui fonctionnent sans problème.
J'aimerai améliorer le code en affichant un msgbox pour recuperer les
differentes valeurs.
J'ai essayer mais quand je fais Ecrire_ini avec :

Message = "Saisir le nom de la variable "
Title = "Insertion dans fichier ini"
Default = " "

Mavariable = InputBox(Message, Title, Default)

( X3 pour les autres variables)

strEcrire = EcrireINI(MonEntete, Mavariable, MaValeur) 'recuperer par les
msgbox,

Ca plante avec erreur de compatibilité parceque ce ne sont pas des String !!!

Comment puis je faire ?

Merci pour vos conseils.



======CODE=================

Private Declare Function GetPrivateProfileString Lib "kernel32" Alias
"GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal
lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As
String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias
"WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal
lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long

Function EcrireINI(Entete As String, Variable As String, Valeur As String)
As String

Fichier = repert_groupe & "\" & "Maquettes.ini"
WriteINI = WritePrivateProfileString(Entete, Variable, Valeur, Fichier)

End Function



Public Sub Ecrire_ini()

Dim strEcrire As String
strEcrire = EcrireINI("MonEntete", "MaVariable", "MaValeur")

End Sub

2 réponses

Avatar
heureux-oli
Bonjour,

Si tu nous as mis tout ton code, c'est un fait que la donnée message est
introduite dans une variable de type Variant.

Dans tous tes modules, il est préférable d'utiliser Option Explicit. Ce
petit morceau de code va t'obliger à déclarer toutes tes variables.

Tu peux faire en sorte que ce morceau de code soit ajouté par le logiciel :
Outils => Options => Editeur => Déclaration des variables obligatoires.

Dim MaVariable As String

Essaie !

--
Heureux-oli
http://word.developpez.com/

----------------------------------------------------------------------------------

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

Bonjour à tous,

Ci dessous quelques lignes de codes qui fonctionnent sans problème.
J'aimerai améliorer le code en affichant un msgbox pour recuperer les
differentes valeurs.
J'ai essayer mais quand je fais Ecrire_ini avec :

Message = "Saisir le nom de la variable "
Title = "Insertion dans fichier ini"
Default = " "

Mavariable = InputBox(Message, Title, Default)

( X3 pour les autres variables)

strEcrire = EcrireINI(MonEntete, Mavariable, MaValeur) 'recuperer par les
msgbox,

Ca plante avec erreur de compatibilité parceque ce ne sont pas des String
!!!

Comment puis je faire ?

Merci pour vos conseils.



======CODE================ >
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias
"GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal
lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As
String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias
"WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal
lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As
Long

Function EcrireINI(Entete As String, Variable As String, Valeur As String)
As String

Fichier = repert_groupe & "" & "Maquettes.ini"
WriteINI = WritePrivateProfileString(Entete, Variable, Valeur, Fichier)

End Function



Public Sub Ecrire_ini()

Dim strEcrire As String
strEcrire = EcrireINI("MonEntete", "MaVariable", "MaValeur")

End Sub


Avatar
Jed
Merci heureux-oli,
Ô grand merci c'était effectivement ca!

Maintenant ca fonctionne a merveille.

Grand merci a ce forum qui est d'un grand secours pour des newbies comme moi.

Cdlt


Bonjour,

Si tu nous as mis tout ton code, c'est un fait que la donnée message est
introduite dans une variable de type Variant.

Dans tous tes modules, il est préférable d'utiliser Option Explicit. Ce
petit morceau de code va t'obliger à déclarer toutes tes variables.

Tu peux faire en sorte que ce morceau de code soit ajouté par le logiciel :
Outils => Options => Editeur => Déclaration des variables obligatoires.

Dim MaVariable As String

Essaie !

--
Heureux-oli
http://word.developpez.com/

----------------------------------------------------------------------------------

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

Bonjour à tous,

Ci dessous quelques lignes de codes qui fonctionnent sans problème.
J'aimerai améliorer le code en affichant un msgbox pour recuperer les
differentes valeurs.
J'ai essayer mais quand je fais Ecrire_ini avec :

Message = "Saisir le nom de la variable "
Title = "Insertion dans fichier ini"
Default = " "

Mavariable = InputBox(Message, Title, Default)

( X3 pour les autres variables)

strEcrire = EcrireINI(MonEntete, Mavariable, MaValeur) 'recuperer par les
msgbox,

Ca plante avec erreur de compatibilité parceque ce ne sont pas des String
!!!

Comment puis je faire ?

Merci pour vos conseils.



======CODE================ > >
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias
"GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal
lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As
String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias
"WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal
lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As
Long

Function EcrireINI(Entete As String, Variable As String, Valeur As String)
As String

Fichier = repert_groupe & "" & "Maquettes.ini"
WriteINI = WritePrivateProfileString(Entete, Variable, Valeur, Fichier)

End Function



Public Sub Ecrire_ini()

Dim strEcrire As String
strEcrire = EcrireINI("MonEntete", "MaVariable", "MaValeur")

End Sub