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 :
- 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.