PDFをバイト配列にロードする方法を知っていると仮定すると、Base64でエンコードしてから、MIMEマルチパートエンコーディングを使用してサーバーに投稿する必要があります。
MSXML ライブラリの機能を利用して、Base64 エンコーディングを実行できます。詳細については、このリンクを参照してください。
PDF を Bas64 文字列として取得したら、それを MIME マルチパートとしてパッケージ化する必要があります。MSXML の XMLHTTP オブジェクトを使用して、その投稿を実行できます。
sEntityBody = "----boundary" & vbCrLf
sEntityBody = sEntityBody & "Content-Disposition: form-data; name=fileInputElementName; filename=""" + sFileName + """" & vbCrLf
sEntityBody = sEntityBody & "Content-Transfer-Encoding: base64" & vbCrLf
sEntityBody = sEntityBody & "Content-Type: application/pdf" & vbCrLf & vbCrLf
sEntityBody = sEntityBody & sPDFBase64 & vbCrLf
sEntityBody = sEntityBody & "-----boundary--" & vbCrLf & vbCrLf
Set xhr = New MSXML2.XMLHTTP30
xhr.setRequestHeader("Content-Type", "multipart/form-data; boundary=-----boundary")
xhr.Open "POST", sUrl, False
xhr.send sEntityBody
おそらくエレガントでも効率的でもありませんが、うまくいくはずです。