Bonjour à tous,
voilà je veux écrire dans un fichier que j'ai au préalable crée et dans lequel j'ai mis des balises pour me repérer mais en compilant j'ai une ereur inconnue qui s'affiche.
Voici mon code
et l'erreur c'est
"Erreur 429
Un composant ActiveX ne peut pas créer d'objet "
Diagnostic??
voilà je veux écrire dans un fichier que j'ai au préalable crée et dans lequel j'ai mis des balises pour me repérer mais en compilant j'ai une ereur inconnue qui s'affiche.
Voici mon code
Code:
Sub generate1()
Dim MonFichier As String
Dim Flag As Integer
numFich = FreeFile
MonDossier$ = Range("B7").Value
MonFichier$ = MonDossier$ & Range("B8").Value
'Rechercher si le dossier existe?
If DossierExiste(MonDossier$) = True Then
'Rechercher si le fichier existe?
If Dir(MonFichier$, vbNormal Or vbReadOnly Or vbHidden Or vbArchive) = "" Then
'Le fichier dans lequel on doit écrire n'existe pas !
MsgBox ("Le fichier n'existe pas")
Else
'affectation des valeurs des balises...
balise1$ = "azerty"
balise2$ = "qwerty"
PlacerDonnee MonDossier$, MonFichier$, balise1$
End If
Else
'Le répertoire n'existe pas
MsgBox ("Le répertoire " + MonDossier$ + " n'existe pas")
End If
End Sub
Function DossierExiste(NomDossier As String) As Boolean
DossierExiste = Dir(NomDossier, vbSystem + vbDirectory + vbHidden) <> ""
End Function
Public Sub PlacerDonnee(strChemDir As String, strChemFich As String, baliseCherchee As String)
' pour pouvoir utiliser les filesystemobject il faut ajouter scrrun.dll :
' dans VBA -> outils -> références -> Microsoft Runtime Environment
Dim fileToRead As New FileSystemObject
Dim strLigne As String
Dim flux As TextStream
strLigne = ""
'on teste si le répertoire existe
If fileToRead.FolderExists(strChemDir) Then
'on teste si le fichier existe
If fileToRead.FileExists(strChemFich) Then
'le répertoire du fichier et le fichier ont été trouvé. On peut créer le fso
Set fileToRead = CreateObject(FileSystemObject)
Set flux = fileToRead.OpenTextFile(strChemFich, ForAppending)
'parcours du fichier tant que l'on a pas atteint sa fin
Do While Not flux.AtEndOfLine
'Si on a trouve la balise cherchée dans la ligne lue
If Not (InStr(1, strLigne, baliseCherchee) = 0) Then
MsgBox ("On a trouvé la balise : " + baliseCherchee)
flux.WriteBlankLines (1)
flux.WriteLine (Range("C4").Value)
flux.WriteLine ("normalement ça marche !!")
End If
'si on a pas trouve la balise dans la ligne courante alors on lit la ligne suivante
strLigne = flux.ReadLine
Loop
Else
MsgBox ("Le fichier : " + strChemFich + " n'existe pas")
End If
Else
MsgBox ("Le répertoire : " + strChemDir + " n'existe pas ")
End If
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
End Sub
et l'erreur c'est
"Erreur 429
Un composant ActiveX ne peut pas créer d'objet "
Diagnostic??