Ich versuche, etwas wie this post aber mit Excel VBA zu tun. Ich möchte jedes Mal, wenn eine Schaltfläche in einem Excel-Add-In gedrückt wird, eine Antwort in einem Google Docs-Formular senden. Das AddIn wird eine XLA-Datei sein und in VBA geschrieben sein.Verwenden Sie Excel VBA zum Ausfüllen und Übermitteln von Google Docs-Formular
Ich möchte in der Lage sein zu sammeln, welche Funktionen die Benutzer verwenden. Wenn jemand eine bessere Lösung hat, bin ich offen.
--- --- Bearbeiten
This ist die Form, ich zu schreiben versuchen (für eines der Felder Auszug des Codes.)
<div class="errorbox-good">
<div class="ss-item ss-item-required ss-text">
<div class="ss-form-entry">
<label for="entry_0" class="ss-q-title">
UserName
<span class="ss-required-asterisk">*</span>
</label>
<label for="entry_0" class="ss-q-help"></label>
<input type="text"
id="entry_0"
class="ss-q-short"
value=""
name="entry.0.single">
</div>
</div>
</div>
--edit 2-- Dies ist, was ich bisher versucht habe, aber es funktioniert immer noch nicht. Ich erhalte einen Fehler in der Zeile, die sagt ".UserName.Value = Environ (" Benutzername ")" Ich vermute, es liegt daran, dass es das Element .username nicht findet.
Private Sub GoogleForm()
Dim ie As Object
Set ie = CreateObject("InternetExplorer.Application")
On Error GoTo errHandler
With ie
.navigate "http://spreadsheets.google.com/viewform?hl=en&cfg=true&formkey=dHFTMzkwR2RpY2tzSUNnbVhIcDN3WWc6MA"
Do While .busy: DoEvents: Loop
Do While .ReadyState <> 4: DoEvents: Loop
With .document.Forms(1)
'Username
.UserName.Value = Environ("username")
'Key
.Key.Value = "00qwe-12ckd"
.submit
End With
Do While Not CBool(InStrB(1, .document.URL, _
"cp_search_response-e.asp"))
DoEvents
Loop
Do While .busy: DoEvents: Loop
Do While .ReadyState <> 4: DoEvents: Loop
MsgBox .document.all.tags("table").Item(11).Rows(1).Cells(7).innerText
End With
Exit Sub
errHandler:
ie.Quit: Set ie = Nothing
End Sub
@guitarthrower: wollte nur unter Antworten, wenn die Antwort überprüfen, um zu sehen Ihre Frage. –
Entschuldigung für die Verzögerung. Ich habe es nicht vergessen. Ich habe bei anderen Projekten einen kleinen Rückstand festgestellt. Ich sollte Zeit haben, mich heute Abend umzusehen. – guitarthrower
kein Problem. Hier um zu helfen! –