Copier Coller Data d'Excel vers Page Web VBA

Bonsoir a tous,

Je cherche une façon stable pour faire du copier coller entre mon fichier VBA et une page IE ou j'ai un tableau.

Le document excel est un table simple, le navigateur web est IE obligatoirement.

Je peux me deplacer dans le tableau du Web en faisant TAB

Dans l'idée j'ai tenté de faire en vba ce que je ferai en manuel mais cela ne marche pas :

Sub test()
For i = 1 To 30
ActiveCell.Copy
SendKeys "%{TAB}", True
SendKeys "^v", True
SendKeys "{TAB}", True
SendKeys "%{TAB}", True
SendKeys "{TAB}", True
Next
End Sub

Au boulot cela marchait entre deux docuement excel, chez moi j'essaye cela ne marche pas.

Il y a beaucoup de Tuto pour faire Web to Excel mais rien Excel to Web.

Can anyone help?!

Merci beaucoup

Clément

bonsoir,

il devrait être possible de réutiliser le principe appliqué à l'introduction d'un identifiant sur une page web.

voir ici https://forum.excel-pratique.com/excel/connexion-sur-site-avec-mot-de-passe-automitiquement-t42095.html

il faut cependant identifier les noms de cellule qui se trouvent sur le formulaire web pour envoi des données au bon endroit.

peux-tu fournir l'adresse de la page ou une copie de son code source (clique droit sur la page et seelectionner code source) ?

Merci pour ta réponse

La page est un outils dans l'extranet du boulot je ne peux donc pas poster le code.

Je viens de voir que c'est du flash.

Avec les commande sendkeys ce n'est pas possible?

Merci encore pour ton aide

bonsoir,

ce doit être possible, mais on parle de solution très instable. Je n'ai jamais essayé.

bonsoir,

j'ai essayé cette méthode avec succès, à tester pour ton cas précis.

Sub sendtoweb()

Shell "C:\Program Files\Internet Explorer\iexplore.exe", vbNormalFocus

Application.Wait (Now + TimeValue("0:00:05"))
Sendkeys "www.test.com",1

' sendkeys envoie des caractères vers la fenêtre active

' ne pas utiliser activate, car cela a pour effet de rendre la fenetre excel active
' ne pas executer la macro en mode pas à pas, pour la même raison

With Worksheets("sheet1")
' on copie les 30 premières cellules de la colonne A

For i = 1 To 30

' on récupère une valeur du tableau excel

SendKeys .Range("A" & i).Value, True

SendKeys "{TAB}", True

Next

End With

End Sub

Ce code fonctionne-t-il avec une plage ? par hasard ?

juju29 a écrit :

bonsoir,

j'ai essayé cette méthode avec succès, à tester pour ton cas précis.

Bonjour, j'ai plus ou moins le même problème, mais j'aimerai le faire sur une page web déjà affichée. Donc j'ai enlevé la première partie qui lance IE (dans mon cas j'utilise chrome).

En revanche je ne comprend pas comment tu reviens sur la page web une fois que tu as copié les cellules et également comment tu colle les cellules copiées.

Ta macro est elle censée être opérationnelle ? Quand je la lance elle se stop à :

juju29 a écrit :

Sendkeys "www.test.com",1

Sans valider l'adresse

skarab2201 a écrit :

Ta macro est elle censée être opérationnelle ? Quand je la lance elle se stop à :

Sendkeys "www.test.com",1

Sans valider l'adresse

la macro était opérationnelle en 2013, je remarque qu'elle ne l'est plus aujourd'hui. autre comportement d'internet explorer et site www.test.com n'existe plus dans sa forme d'alors.

J'ai un peu adapté ta macro à ma sauce, ca marche globalement à une exception : Je n'arrive pas à naviguer dans la dernière colonne de ma feuille active.

Comment faire ?

 Sub Macro1()
'
' Macro1 Macro

    Dim DerLig As Long
    Dim DerCol As Long

    With Worksheets("Feuil1") 'A adapter
        DerLig = .Range("A1").End(xlDown).Row
        DerCol = Range("IV1").End(xlToLeft).Column        
    End With

    SendKeys "{%TAB}", True
    For i = 2 To DerLig
    'j'ai essayé une de ces deux lignes, mais ça ne marche pas
        SendKeys .Cells(i, DerCol).Value, True
        SendKeys .Range(.Cells(i, DerCol)), True

        SendKeys "{TAB}", True

End Sub
Rechercher des sujets similaires à "copier coller data page web vba"