Bonjour,
J'ai un code pour faire du transfert de données via sendkeys sur l'AS/400.
Ce code fonctionne parfaitement sur excel 2010 mais ne fonctionne pas du tout sur excel 2013
L'ereur renvoyé est un code 429 activex
Je ne trouve pas pourquoi.
Voici mon code et la ligne en gras qui ne fonctionne pas:
Sub TRANSFER_AS400()
Dim Connlist As Object
Dim Session As Object
Dim capecran As Object
Dim I, t, q, r As Long
Dim Nom As String
'Déprotéger la feuille
ActiveSheet.Unprotect ("BE")
'Demande AS400 Session A
If MsgBox("Le DE est il bien ouvert sur la session A - ONGLET RUBRIQUE OUVERT ?", vbYesNo + vbCritical, "titre") = vbYes Then ' le critical c'est juste pour la croix rouge.
Set Connlist = CreateObject("PCOMM.autECLConnList")
Set capecran = CreateObject("PCOMM.autECLPS")
Set Session = CreateObject("PCOMM.autECLSession")
capecran.SetConnectionByName ("A")
Session.SetConnectionByName ("A")
Worksheets("recap").Cells(5, 30).Value = Session.AUTECLPS.GetText(1, 1)
If Range("AD5").Value Like "*DETAIL RUBRIQUE*" & "*DOSSIER D'EXECUTION*" Then
q = 12
r = 1
Session.AUTECLPS.SendKeys "", 12, 2
For I = 3 To Range("B65536").End(xlUp).Row
Session.AUTECLPS.SendKeys Range("B" & I), q, 2
Session.AUTECLPS.SendKeys Range("B" & I).Offset(0, 2), q, 18
Session.AUTECLPS.SendKeys Range("B" & I).Offset(0, 3), q, 39
q = q + 1
If r Mod 8 = 0 Then
Session.AUTECLPS.SendKeys "[page down]"
Session.autECLOIA.WaitForInputReady
Session.AUTECLPS.SendKeys "", 12, 2
End If
r = r + 1
If q = 20 Then
q = 12
End If
Next I
Else: MsgBox ("Vous n'êtes pas dans l'onglet Rubrique")
End If
End If
Worksheets("recap").Cells(5, 30).Delete
'Protéger la feuille
ActiveSheet.Protect ("BE")
End Sub
Dans l'attente d'un retour
J'ai un code pour faire du transfert de données via sendkeys sur l'AS/400.
Ce code fonctionne parfaitement sur excel 2010 mais ne fonctionne pas du tout sur excel 2013
L'ereur renvoyé est un code 429 activex
Je ne trouve pas pourquoi.
Voici mon code et la ligne en gras qui ne fonctionne pas:
Sub TRANSFER_AS400()
Dim Connlist As Object
Dim Session As Object
Dim capecran As Object
Dim I, t, q, r As Long
Dim Nom As String
'Déprotéger la feuille
ActiveSheet.Unprotect ("BE")
'Demande AS400 Session A
If MsgBox("Le DE est il bien ouvert sur la session A - ONGLET RUBRIQUE OUVERT ?", vbYesNo + vbCritical, "titre") = vbYes Then ' le critical c'est juste pour la croix rouge.
Set Connlist = CreateObject("PCOMM.autECLConnList")
Set capecran = CreateObject("PCOMM.autECLPS")
Set Session = CreateObject("PCOMM.autECLSession")
capecran.SetConnectionByName ("A")
Session.SetConnectionByName ("A")
Worksheets("recap").Cells(5, 30).Value = Session.AUTECLPS.GetText(1, 1)
If Range("AD5").Value Like "*DETAIL RUBRIQUE*" & "*DOSSIER D'EXECUTION*" Then
q = 12
r = 1
Session.AUTECLPS.SendKeys "", 12, 2
For I = 3 To Range("B65536").End(xlUp).Row
Session.AUTECLPS.SendKeys Range("B" & I), q, 2
Session.AUTECLPS.SendKeys Range("B" & I).Offset(0, 2), q, 18
Session.AUTECLPS.SendKeys Range("B" & I).Offset(0, 3), q, 39
q = q + 1
If r Mod 8 = 0 Then
Session.AUTECLPS.SendKeys "[page down]"
Session.autECLOIA.WaitForInputReady
Session.AUTECLPS.SendKeys "", 12, 2
End If
r = r + 1
If q = 20 Then
q = 12
End If
Next I
Else: MsgBox ("Vous n'êtes pas dans l'onglet Rubrique")
End If
End If
Worksheets("recap").Cells(5, 30).Delete
'Protéger la feuille
ActiveSheet.Protect ("BE")
End Sub
Dans l'attente d'un retour