Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/09/2011, 13h02   #1
Membre habitué
 
Homme Michael
Ingénieur qualité méthodes
Inscription : octobre 2010
Messages : 200
Détails du profil
Informations personnelles :
Nom : Homme Michael
Localisation : France, Aisne (Picardie)

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : Industrie

Informations forums :
Inscription : octobre 2010
Messages : 200
Points : 115
Points : 115
Par défaut syntaxe lors dune requete de connexion à un fichier fermé

Bonjour,

j'ai réalisé une connexion à un fichier afin de récuperer des données.

j'utilise ce code lorsque je travail sur la feuille en question

Code :
1
2
3
4
5
For l = 1 To DerniereLigne
    For c = 1 To DerniereColone
        MonTableau(l, c) = Cells(l, c)
    Next c
Next l
je cherche donc a travailler sur une nouvelle feuille où MonTableau() sera un variable de cette derniere mais les valeurs cells() seront dans le document au bout de la connexion.

ma question est, quelle est la syntaxe que je dois utiliser pour que cela fonctionne?
redstoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2011, 13h29   #2
Membre chevronné
 
Inscription : octobre 2006
Messages : 541
Détails du profil
Informations personnelles :
Localisation : France, Ardèche (Rhône Alpes)

Informations forums :
Inscription : octobre 2006
Messages : 541
Points : 760
Points : 760
Bonjour

voir ce tuto
http://silkyroad.developpez.com/VBA/ClasseursFermes/
__________________
Michel_M
Michel_M est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/09/2011, 13h41   #3
Membre habitué
 
Homme Michael
Ingénieur qualité méthodes
Inscription : octobre 2010
Messages : 200
Détails du profil
Informations personnelles :
Nom : Homme Michael
Localisation : France, Aisne (Picardie)

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : Industrie

Informations forums :
Inscription : octobre 2010
Messages : 200
Points : 115
Points : 115
j'ai vu ce tutorial mais le soucis cest que je ne le comprend pas trop...
redstoff est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 13/09/2011, 15h08   #4
Membre Expert
 
Homme Hervé Silve
Inscription : août 2010
Messages : 773
Détails du profil
Informations personnelles :
Nom : Homme Hervé Silve
Localisation : France

Informations forums :
Inscription : août 2010
Messages : 773
Points : 2 093
Points : 2 093
Bonjour,

Montre ton code afin qu'on puisse voir ce que tu veux faire et pour l'instant où tu en es.

Hervé.
Theze est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 14/09/2011, 11h24   #5
Membre habitué
 
Homme Michael
Ingénieur qualité méthodes
Inscription : octobre 2010
Messages : 200
Détails du profil
Informations personnelles :
Nom : Homme Michael
Localisation : France, Aisne (Picardie)

Informations professionnelles :
Activité : Ingénieur qualité méthodes
Secteur : Industrie

Informations forums :
Inscription : octobre 2010
Messages : 200
Points : 115
Points : 115
bonjour,
j'ai finalement joué la facilité.

je voulais a la base ne copier que certaine valeur dans une variable tableau, mais n'y arrivant pas quand je fais la connexion je copie toute la page sur nouveau fichier et apres copie les valeurs

mon code est

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Sub Connection_V1()
    Dim Cn As ADODB.Connection
 
    Dim Fichier As String
 
    'Définit le classeur fermé servant de base de données
    Fichier = "S:\z Doc\z base documentaire\ER\SPRI\ANNEE EN COURS\ER 036 Archive des NC\ER 036 HB ARCHIVES NC.xls"
 
    Set Cn = New ADODB.Connection
 
    '--- Connexion ---
    With Cn
        .Provider = "Microsoft.Jet.OLEDB.4.0"
        .ConnectionString = "Data Source=" & Fichier & _
            ";Extended Properties=Excel 8.0;"
        .Open
    End With
 
    Dim NomFeuille As String
    NomFeuille = "liste des NC ligne"
    texte_SQL = "SELECT * FROM [" & NomFeuille & "$]"
 
    Set Rst = New ADODB.Recordset
    Set Rst = Cn.Execute(texte_SQL)
 
    Feuil1.Range("A2").CopyFromRecordset Rst
 
    Cn.Close
    Set Cn = Nothing
End Sub
mais j'accepte toutes les propositions pour réaliser mon idée à l'origine
redstoff est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2011, 11h43   #6
Membre actif
 
Inscription : novembre 2008
Messages : 188
Détails du profil
Informations forums :
Inscription : novembre 2008
Messages : 188
Points : 194
Points : 194
Pour récupérer seulement les données dont tu as besoin, il suffit d'écrire la requête SQL qui va bien.

Et pour tout mettre dans un tableau tu peux parcourir un à un les enregistrements de ton recordset et les stocker dans un tableau.
Sclarckone est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h18.


 
 
 
 
Partenaires

Hébergement Web