Mister.salm
XLDnaute Nouveau
Bonjour,
J'ai un petit souci de création d'une macro.
Mon problème.
J'ai des tables SQL ZZZZ de taille XXX et de longueur YYY
Ce que je ne connais pas à l'avance c'est :
Mon objectif est de générer automatiquement des scripts.
J'ai un petit table dans ma page de garde ou j'ai mis à "compléter" mes 3 informations.
et je récupère sous cette forme (exemple pour l'INSERT) :
'Tableau des valeurs
p = ActiveSheet.Range("D2").Value (nom du record)
i = ActiveSheet.Range("C2").Value (nb de colonne)
r = ActiveSheet.Range("B2").Value (nb de ligne)
sPhrase = "INSERT INTO" + " " + p + " " + "VALUES"
J'arrive à faire une boucle pour prendre sur une colonne via ça :
Sub GOBRA()
Dim sPhrase As String
Dim i As Integer
sPhrase = "("
For i = 2 To ActiveSheet.Range("F2").Value
sPhrase = sPhrase + "'" + ActiveSheet.Range("A" + CStr(i)).Text + "',"
Next i
sPhrase = sPhrase + "'" + ActiveSheet.Range("A" + CStr(i)).Text + "')"
ActiveSheet.Range("C6") = sPhrase
ActiveSheet.Range("C6").Copy
End Sub
Mais je n'y arrive pas pour prendre en compte les colonnes (qui est variable)
Un exemple :
Données :
Robert MARCEL H CDI
Marc PIGEON H CDD
Table : PASSE
J'aimerai en cliquant sur mon bouton, retrouver sur une page annexe
INSERT INTO PASSE VALUES ('Robert','MARCEL','H','CDI');
INSERT INTO PASSE VALUES ('Marc','PIGEON','H','CDD');
voir même la génération directement de mon fichier SQL ^^
Par avance merci de votre aide.
J'ai un petit souci de création d'une macro.
Mon problème.
J'ai des tables SQL ZZZZ de taille XXX et de longueur YYY
Ce que je ne connais pas à l'avance c'est :
- Le nom de la table (Record)
- Le nombre de colonne par ligne
- Le nombre de ligne.
Mon objectif est de générer automatiquement des scripts.
J'ai un petit table dans ma page de garde ou j'ai mis à "compléter" mes 3 informations.
et je récupère sous cette forme (exemple pour l'INSERT) :
'Tableau des valeurs
p = ActiveSheet.Range("D2").Value (nom du record)
i = ActiveSheet.Range("C2").Value (nb de colonne)
r = ActiveSheet.Range("B2").Value (nb de ligne)
sPhrase = "INSERT INTO" + " " + p + " " + "VALUES"
J'arrive à faire une boucle pour prendre sur une colonne via ça :
Sub GOBRA()
Dim sPhrase As String
Dim i As Integer
sPhrase = "("
For i = 2 To ActiveSheet.Range("F2").Value
sPhrase = sPhrase + "'" + ActiveSheet.Range("A" + CStr(i)).Text + "',"
Next i
sPhrase = sPhrase + "'" + ActiveSheet.Range("A" + CStr(i)).Text + "')"
ActiveSheet.Range("C6") = sPhrase
ActiveSheet.Range("C6").Copy
End Sub
Mais je n'y arrive pas pour prendre en compte les colonnes (qui est variable)
Un exemple :
Données :
Robert MARCEL H CDI
Marc PIGEON H CDD
Table : PASSE
J'aimerai en cliquant sur mon bouton, retrouver sur une page annexe
INSERT INTO PASSE VALUES ('Robert','MARCEL','H','CDI');
INSERT INTO PASSE VALUES ('Marc','PIGEON','H','CDD');
voir même la génération directement de mon fichier SQL ^^
Par avance merci de votre aide.