OVH Cloud OVH Cloud

question vb

2 réponses
Avatar
GARAULT
Bonjour tout le monde.

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

qui sais ce que veut dire cette ligne ci dessus et pourquoi sa fais bugger
dans le code suivant: merci...

Private Sub CommandButton1_Click()
Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String, Rg As Range
Dim Chemin As String, Fichier As String
Dim FileTemp As String

Chemin = "C:\Documents and Settings\Métreur1\Mes documents\" ' à déterminer
Fichier = "Aperçu écran.RTF" ' à déterminer

'FileTemp : C'est le nom que va prendre la version .txt
'du fichier originale. Le fichier créé est
'détruit à la fin de la procédure. Tu peux conserver
'Le même nom pour toutes tes opérations

FileTemp = "c:\Aperçu écran.doc" ' à déterminer

'Enregistrement du fichier originale sous un autre Format
NewFileVersion Chemin & Fichier, FileTemp

Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Chemin & ";" & _
"Extended Properties=""text;HDR=No;FMT=Delimited"""

Requete = "SELECT * From " & FileTemp

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

Set Rg = Worksheets("Prix vitrage").Range("a25")
Rg.CopyFromRecordset Rst
Rst.Close: Conn.Close
Set Rg = Nothing
Kill FileTemp
End Sub


Sub NewFileVersion(File As String, FileTemp As String)

Dim Wd As Object
Dim Dc As Object

Set Wd = CreateObject("Word.Application")
With Wd
.Visible = False ' Optionnel, mettre à false
'pour ne rien voir ...
Set Dc = .documents.Open(File)
Dc.SaveAs Filename:=FileTemp, FileFormat:=wdFormatText
Dc.Close
.Quit
End With
End Sub

2 réponses

Avatar
MichDenis
La procédure fonctionne très bien pour la XIème fois !

Modifie cette ligne de code :

FileTemp = "c:Aperçu_écran.txt" ' à déterminer

L'extension du fichier est .txt et non celle que tu désires !
Si tu ne veux pas te compliquer la vie, il est toujours préférable
d'utiliser des noms SANS espace... en conséquence, utilise
le "Underscore" pour réunir Aperçu et Écran.txt




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

Bonjour tout le monde.

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

qui sais ce que veut dire cette ligne ci dessus et pourquoi sa fais bugger
dans le code suivant: merci...

Private Sub CommandButton1_Click()
Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String, Rg As Range
Dim Chemin As String, Fichier As String
Dim FileTemp As String

Chemin = "C:Documents and SettingsMétreur1Mes documents" ' à déterminer
Fichier = "Aperçu écran.RTF" ' à déterminer

'FileTemp : C'est le nom que va prendre la version .txt
'du fichier originale. Le fichier créé est
'détruit à la fin de la procédure. Tu peux conserver
'Le même nom pour toutes tes opérations

FileTemp = "c:Aperçu écran.doc" ' à déterminer

'Enregistrement du fichier originale sous un autre Format
NewFileVersion Chemin & Fichier, FileTemp

Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Chemin & ";" & _
"Extended Properties=""text;HDR=No;FMTÞlimited"""

Requete = "SELECT * From " & FileTemp

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

Set Rg = Worksheets("Prix vitrage").Range("a25")
Rg.CopyFromRecordset Rst
Rst.Close: Conn.Close
Set Rg = Nothing
Kill FileTemp
End Sub


Sub NewFileVersion(File As String, FileTemp As String)

Dim Wd As Object
Dim Dc As Object

Set Wd = CreateObject("Word.Application")
With Wd
.Visible = False ' Optionnel, mettre à false
'pour ne rien voir ...
Set Dc = .documents.Open(File)
Dc.SaveAs Filename:=FileTemp, FileFormat:=wdFormatText
Dc.Close
.Quit
End With
End Sub
Avatar
MichDenis
Faire du copier-coller, ce n'est pas nécessairement moyen d'apprendre !!!

Îl faut prendre le temps d'adapter les chemins et nom des fichiers correctement

Ceci est ma dernière intervention sur cette question.

Voici le nom et chemin des fichiers ont été adapter
à toi de vérifier que tout est conforme
'-----------------------------------
Private Sub CommandButton1_Click()

Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String, Rg As Range
Dim Chemin As String, FichierSource As String
Dim FichierRequete As String
Dim FileTemp As String

Chemin = "C:Documents and SettingsMétreur1Mes documents" ' à déterminer
FichierSource = ""Aperçu_écran.rtf"" ' à déterminer
FichierRequete = "Aperçu_écran.txt" ' à déterminer

'FileTemp : C'est le nom que va prendre la version .txt
'du fichier source. Le fichier créé est
'détruit à la fin de la procédure. Tu peux conserver
'Le même nom pour toutes tes opérations

FileTemp = Chemin & FichierRequete ' à déterminer

'Enregistrement du fichier originale sous un autre Format
NewFileVersion Chemin & FichierSource, FileTemp

Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Chemin & ";" & _
"Extended Properties=""text;HDR=No;FMTÞlimited"""

Requete = "SELECT * From " & FichierRequete

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

Set Rg = Worksheets("Prix vitrage").Range("a25")
Rg.CopyFromRecordset Rst
Rst.Close: Conn.Close
Set Rg = Nothing
Kill FileTemp
End Sub

'-----------------------------------
Sub NewFileVersion(File As String, FileTemp As String)

Dim Wd As Object
Dim Dc As Object

Set Wd = CreateObject("Word.Application")
With Wd
.Visible = False ' Optionnel, mettre à false
'pour ne rien voir ...
Set Dc = .documents.Open(File)
Dc.SaveAs Filename:=FileTemp, FileFormat:=wdFormatText
Dc.Close
.Quit
End With
End Sub
'-----------------------------------



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

oui mais même comme ça (voir code ci dessous) j'ai ce message d'erreur:
erreur d'execution '-2147217865(80040e37)':
le moteur de base de donnée microsoft n'a pas pu trouver l'objet
'aperçu-ecrans.txt'. assurez vous que l'objet existe et que vous avez
correctement saisi son nom et son chemin.
Pourtant le fichier txt est bien crée en c:

Et du coup en débuger j'ai cette ligne qui est en surbrillant jaune:
Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic
c'est pour ça je comprend pas...
*********************************************************
Private Sub CommandButton1_Click()
Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String, Rg As Range
Dim Chemin As String, Fichier As String
Dim FileTemp As String

Chemin = "C:Documents and SettingsMétreur1Mes documents" ' à déterminer
Fichier = "Aperçu_écran.RTF" ' à déterminer

'FileTemp : C'est le nom que va prendre la version .txt
'du fichier originale. Le fichier créé est
'détruit à la fin de la procédure. Tu peux conserver
'Le même nom pour toutes tes opérations

FileTemp = "c:Aperçu_écran.txt" ' à déterminer

'Enregistrement du fichier originale sous un autre Format
NewFileVersion Chemin & Fichier, FileTemp

Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Chemin & ";" & _
"Extended Properties=""text;HDR=No;FMTÞlimited"""

Requete = "SELECT * From " & FileTemp

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

Set Rg = Worksheets("Prix vitrage").Range("a25")
Rg.CopyFromRecordset Rst
Rst.Close: Conn.Close
Set Rg = Nothing
Kill FileTemp
End Sub


Sub NewFileVersion(File As String, FileTemp As String)

Dim Wd As Object
Dim Dc As Object

Set Wd = CreateObject("Word.Application")
With Wd
.Visible = False ' Optionnel, mettre à false
'pour ne rien voir ...
Set Dc = .documents.Open(File)
Dc.SaveAs Filename:=FileTemp, FileFormat:=wdFormatText
Dc.Close
.Quit
End With
End Sub
********************************************************


La procédure fonctionne très bien pour la XIème fois !

Modifie cette ligne de code :

FileTemp = "c:Aperçu_écran.txt" ' à déterminer

L'extension du fichier est .txt et non celle que tu désires !
Si tu ne veux pas te compliquer la vie, il est toujours préférable
d'utiliser des noms SANS espace... en conséquence, utilise
le "Underscore" pour réunir Aperçu et Écran.txt




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

Bonjour tout le monde.

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

qui sais ce que veut dire cette ligne ci dessus et pourquoi sa fais bugger
dans le code suivant: merci...

Private Sub CommandButton1_Click()
Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String, Rg As Range
Dim Chemin As String, Fichier As String
Dim FileTemp As String

Chemin = "C:Documents and SettingsMétreur1Mes documents" ' à déterminer
Fichier = "Aperçu écran.RTF" ' à déterminer

'FileTemp : C'est le nom que va prendre la version .txt
'du fichier originale. Le fichier créé est
'détruit à la fin de la procédure. Tu peux conserver
'Le même nom pour toutes tes opérations

FileTemp = "c:Aperçu écran.doc" ' à déterminer

'Enregistrement du fichier originale sous un autre Format
NewFileVersion Chemin & Fichier, FileTemp

Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Chemin & ";" & _
"Extended Properties=""text;HDR=No;FMTÞlimited"""

Requete = "SELECT * From " & FileTemp

Rst.Open Requete, Conn, adOpenKeyset, adLockOptimistic

Set Rg = Worksheets("Prix vitrage").Range("a25")
Rg.CopyFromRecordset Rst
Rst.Close: Conn.Close
Set Rg = Nothing
Kill FileTemp
End Sub


Sub NewFileVersion(File As String, FileTemp As String)

Dim Wd As Object
Dim Dc As Object

Set Wd = CreateObject("Word.Application")
With Wd
.Visible = False ' Optionnel, mettre à false
'pour ne rien voir ...
Set Dc = .documents.Open(File)
Dc.SaveAs Filename:=FileTemp, FileFormat:=wdFormatText
Dc.Close
.Quit
End With
End Sub