Insertion de variables dans un lien URL

Natoleza

XLDnaute Nouveau
Bonjour,

J'ai un problème dans mon code et j'aimerais savoir si il est possible de faire ce que je souhaite. En effet, je souhaiterais générer différentes pages web via Excel. Or ces pages web ne varient que de variables que je connais. Ainsi, j'ai crée un code qui me permet de rentrer ces variables et de les changer dans l'url mais ca ne marche pas, quelque soit les valeurs que je donne aux variables, la page générée est la même.

Est ce un problème de concaténation?
Je vous joins mon code pour plus d'explications. j'ai mis en gras ce qui me parait problématique. Merci d'avance pour vos réponses


Sub Titres()

Dim TabTitre(7)
Dim TabTitres(7)

TabTitre(0) = "Nom"
TabTitre(1) = "Code"
TabTitre(2) = "Periodicite"
TabTitre(3) = "Date1"
TabTitre(4) = "Date2"
TabTitre(5) = "NbCours"
TabTitre(6) = "NumFeuille"

Range("A1:G1").Value = TabTitre
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With

Range("A1:G1").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With

Dim a As Integer, b As Integer, c As Integer, d As Integer, e As Integer, f As Integer
Dim Nom As String, Code As String, Periodicite As String
Dim s As String, a1 As Integer, b1 As Integer, b2 As Integer, c1 As Integer, d1 As Integer, d2 As Integer, e1 As Integer, f1 As Integer

Nom = Application.InputBox( _
Prompt:="Quel est le nom de l'indice étudié ?", _
Title:="Choix du nom de l'indice", _
Type:=2)

Code = Application.InputBox( _
Prompt:="Quel est le code de l'indice étudié ?", _
Title:="Code de l'indice", _
Type:=2)

Periodicite = Application.InputBox( _
Prompt:="Quelle est la périodicité de l'indice étudié ?", _
Title:="Choix de la périodicité de l'indice", _
Type:=2)

a1 = Application.InputBox( _
Prompt:="Quelle est le jour de début d'exercice ?", _
Title:="Date de du premier exercice", _
Type:=2)

b2 = Application.InputBox( _
Prompt:="Quelle est le mois de début d'exercice ?", _
Title:="Date de du premier exercice", _
Type:=2)

b1 = b2 - 1

c1 = Application.InputBox( _
Prompt:="Quelle est l'année de début d'exercice ?", _
Title:="Date de du premier exercice", _
Type:=2)

e = Application.InputBox( _
Prompt:="Quelle est le jour de fin d'exercice ?", _
Title:="Date de du dernier exercice", _
Type:=1)

d2 = Application.InputBox( _
Prompt:="Quelle est le mois de fin d'exercice ?", _
Title:="Date de du dernier exercice", _
Type:=1)

d1 = d2 - 1

f1 = Application.InputBox( _
Prompt:="Quelle est l'année de fin d'exercice ?", _
Title:="Date de du dernier exercice", _
Type:=1)

NbCours = Application.InputBox( _
Prompt:="Quel est le nombre de cours ?", _
Title:="Nombre de cours", _
Type:=1)

TabTitres(0) = Nom
TabTitres(1) = Code
TabTitres(2) = Periodicite
TabTitres(5) = NbCours
TabTitres(6) = 1


'Transfère les éléments du tableau dans la feuille de calcul

Range("A2:G2").Value = TabTitres
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With

Range("D2").Select
ActiveCell.FormulaR1C1 = a1 & "/" & b2 & "/" & c1
Range("E2").Select
ActiveCell.FormulaR1C1 = e1 & "/" & d2 & "/" & f1

Workbooks.Open Filename:= _
"http://ichart.finance.yahoo.com/table.csv?s=Code&d=d1&e=E&f=f1&g=d&a=a1&b=b1&c=c1&ignore=.csv"


End Sub
 

Pierrot93

XLDnaute Barbatruc
Re : Insertion de variables dans un lien URL

Bonjour,

pas tout compris de ton code, mais pour recréer une chaine essaye dans ce sens :
Code:
Workbooks.Open Filename:= _
"http://ichart.finance.yahoo.com/table.csv?s=Code"   & Mavariable1 &  "=" & mavariable2 & "=blabla".......
bonne journée
@+
 

Natoleza

XLDnaute Nouveau
Re : Insertion de variables dans un lien URL

Merci pour ton aide. J'ai change mon code comme ceci, est cela que tu avais en tête?

Workbooks.Open Filename:= _
"http://ichart.finance.yahoo.com/table.csv?s=Code&d&" = "&e&" = "&f&" = "&g=d&a&" = "&b&" = "&c&" = "&ignore=.csv"

Néanmoins il me renvoie erreur d'exécution 13, Incompatibilité de type.
 

Pierrot93

XLDnaute Barbatruc
Re : Insertion de variables dans un lien URL

Re,

non pas vraiment, plutôt comme ceci :
Code:
Workbooks.Open Filename:= _
"http://ichart.finance.yahoo.com/table.csv?s=Code&d" & "=" & e & "=" & f & "=" ect...

les signes = faisant partie de l'url....
 

Natoleza

XLDnaute Nouveau
Re : Insertion de variables dans un lien URL

Si je fais ce que vous dites, cela donne

Workbooks.Open Filename:= _
"http://ichart.finance.yahoo.com/table.csv?"s="&Code&"a="&a1&"b="&b1&"c="&c1&"d="&d1&"e="&e1&"f="&f1&g=m&ignore=.csv"

Malheureusement on me renvoie Erreur de compilation Attendu fin d'instruction
 

francedemo

XLDnaute Occasionnel
Re : Insertion de variables dans un lien URL

bonjour à tous,

à essayer :

"http://ichart.finance.yahoo.com/table.csv?s=" & XOP & "&a=" & 05 & "&b=" & 2 & "&c=" & 2009 & "&d=" & 04 & "&e=" & 21 & "&f=" & 2012 & "&g=m&ignore=.csv"

bien sur, à adapter à tes codes...
l'idée, c'est de mettre " pour tous les textes, ajouter un & pour assembler tout ça
 

Discussions similaires

Statistiques des forums

Discussions
312 224
Messages
2 086 409
Membres
103 201
dernier inscrit
centrale vet