Lire données avec Usf dans Classeur Fermé

MuscatMimi

XLDnaute Accro
Bonjour a tous

Pascal m'a transmis un fichier pour ecrire dans un Classeur Fermé

je l'en remercie,c'est ce que je cherchais

Maintenent, je désire avec ce même Fichier pouvoir Lire les Données du Classeur Fermé avec un Usf

Est ce possible???,,

Merci a tous de réponses
Fichier sur Ci-Joint.fr
Cijoint.fr - Service gratuit de dépôt de fichiers
Cordialement
 
C

Compte Supprimé 979

Guest
Re : Lire données avec Usf dans Classeur Fermé

Salut,

Recherche dans le forum le terme "ADO"
Il doit y avoir plusieurs post sur ce sujet ;)

Pour une cellule le code peut-être
Code:
Public Function GetValueWithADO(Classeur$, Feuille$, Cell As Range)
  'renvoie la valeur de la cellule Cell de la feuille Feuille
  'du classeur fermé Classeur
  Dim RcdSet As Object
  Dim strConn As String, strCmd As String
  Dim DummyBase As Range
  ' Permettre à la fonction de se reclaculer automatiquement
  Application.Volatile
  'prépare une "base de données" bidon pour la clause SELECT
  '(une entête fictive et une ligne de données)
  Set DummyBase = Cell.Offset(-1, 0).Resize(2)
  'prépare les commandes ADO et SQL
  strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                "Data Source=" & Classeur & ";" & _
                "Extended Properties=""Excel 8.0;HDR=No;IMEX=1;"";"
  strCmd = "SELECT * FROM [" & Feuille & "$" & DummyBase.Address(0, 0) & "]"
  'crée l'objet Recordset
  Set RcdSet = CreateObject("ADODB.Recordset")
  'va chercher l'info
  RcdSet.Open strCmd, strConn, 0, 1, 1 'adOpenForwardOnly, adLockReadOnly, adCmdText
  'et la renvoie
  GetValueWithADO = Application.Clean(RcdSet(0))
  'nettoyage
  Set RcdSet = Nothing
End Function

A+
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Lire données avec Usf dans Classeur Fermé

Bonsoir,


Code:
Private Sub UserForm_Initialize()
  'Microsoft ActiveX DataObject doit être coché
  ' Champ nommé MaBD avec lignes vides
  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Excel Driver (*.xls)};ReadOnly=1;DBQ=" & _
      ThisWorkbook.Path & "\" & "ADOsource.xls"
  Set rs = cnn.Execute("SELECT nom,Prenom FROM MaBD WHERE nom<>'' Order By nom")
  Me.ListBox1.List = Application.Transpose(rs.GetRows)
  rs.Close
  cnn.Close
  Set rs = Nothing
  Set cnn = Nothing
End Sub

ADO

JB
 

MuscatMimi

XLDnaute Accro
Re : Lire données avec Usf dans Classeur Fermé

Merci a tous les deux, mais ce n'est pas ce que je demande
J'aimerais ,avec un Usf ,lire les données du classeur fermé
mais en sélectionnant un Nom dans une ComboBox et que les données s'affiche dans TextBox Nom textBox Prénom etc jeté un coup d'oeil au fichier joint

Merci d'avance
Bonne soirée
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : Lire données avec Usf dans Classeur Fermé

Voir PJ

Code:
Private Sub UserForm_Initialize()
  'Microsoft ActiveX DataObject doit être coché
  ' Champ nommé MaBD avec lignes vides
  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Excel Driver (*.xls)};ReadOnly=1;DBQ=" & _
      ThisWorkbook.Path & "\" & "ADOsource.xls"
  Set rs = cnn.Execute("SELECT nom FROM MaBD WHERE nom<>'' Order By nom")
  Me.ComboBox1.List = Application.Transpose(rs.GetRows)
  rs.Close
  cnn.Close
  Set rs = Nothing
  Set cnn = Nothing
End Sub

Private Sub ComboBox1_Change()
  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Excel Driver (*.xls)};ReadOnly=1;DBQ=" & _
      ThisWorkbook.Path & "\" & "ADOsource.xls"
  Set rs = cnn.Execute("SELECT nom,prenom,salaire FROM MaBD WHERE nom='" & Me.ComboBox1 & "' Order By nom")
  Me.TextBox1 = rs("prenom")
  Me.TextBox2 = rs("salaire")
  rs.Close
  cnn.Close
  Set rs = Nothing
  Set cnn = Nothing
End Sub

JB
Formation Excel VBA JB
 

Pièces jointes

  • ADOsource.XLS
    22.5 KB · Affichages: 118
  • ADO12.xls
    34 KB · Affichages: 135

MuscatMimi

XLDnaute Accro
Re : Lire données avec Usf dans Classeur Fermé

Ouah merci Boisgontier,
exactement ce que je cherchais , bravo merci tout plein
Je suis ravi,ça fait plaisir d'avoir des pro comme vous l'êtes tous,maintenent je vais
décortiqué le code pour apprendre

Bonne soirée
 

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 102
Membres
103 117
dernier inscrit
augustin.morille