End Sub ----------------------------------- 0621デフォルトの名無しさん (ワッチョイ 6623-V1Wy)2017/07/27(木) 20:32:44.20ID:60P4ZjAM0>>620 msdnのリファレンスをみると Outlookテンプレート(.oft)を指定しろって書いてあるので 怒られているとおり、型がちがうのでしょう。
With CreateObject("Outlook.Application") .GetNamespace("MAPI").GetDefaultFolder(16).Display For i = 1 To lastRow - 1 With .CreateItem(olMailItem) .To = dataSet(i, 1) .Subject = dataSet(i, 2) .Attachments.Add dataSet(i, 3) .Body = dataSet(i, 4) .Save End With Next i End With 0630デフォルトの名無しさん (ワッチョイ 6623-V1Wy)2017/07/27(木) 23:27:06.45ID:60P4ZjAM0>>628 よく考えたら、参照ならその前にエラーを吐きそう。 ためしに
Sub test()
Dim ol As Object Set ol = CreateObject("Outlook.Application") Dim mi As Object Set mi = ol.CreateItem(olMailItem) mi.Display
With CreateObject("Outlook.Application") .GetNamespace("MAPI").GetDefaultFolder(16).Display For i = 1 To lastRow - 1 With .CreateItem(0) .To = dataSet(i, 1) .Subject = dataSet(i, 2) .Attachments.Add dataSet(i, 3) .Body = dataSet(i, 4) .Save End With Next i End With 0635デフォルトの名無しさん (オッペケ Srb3-ZCwv)2017/07/28(金) 04:34:16.17ID:ccATQH/dr 一歩遅かったか…orz 0636620 (アウアウアー Sab6-6wLz)2017/07/28(金) 06:49:10.86ID:Kx1QSHwna>>635 おはようございます! ありがとうございます! 0637デフォルトの名無しさん (ワッチョイ db11-AITk)2017/07/28(金) 23:02:57.85ID:+oxMyCi10 win10 excel2016で MSXML2.XMLHTTPを使って responseTextでgoogle検索結果のページを取得しようとすると、 responseTextで返ってきたものが、今までwin7 excel2007などで返ってきたものと全然違うんですが、win7の時のように受け取る方法ってありませんか?
win7の時はhtmlそのものが返ってきてましたがwin10では最初の方が判読困難です。
やろうとしていることは、vbaでgoogle画像検索の結果の画像をセルに表示しようと思ってます。 0638デフォルトの名無しさん (ワッチョイ 6aaa-V1Wy)2017/07/30(日) 10:16:32.82ID:WZc9I6Vq0 そういえば responseBody しか使ったことないなあ (adTypeBinary な ADODB オブジェクトに Write するために) 0639デフォルトの名無しさん (ワッチョイ db11-AITk)2017/07/30(日) 12:41:33.40ID:ND/Yhbfk0 すみません、いろいろ試してたんですが、google以外ではちゃんと同じようなものを受け取れてました。 googleでは環境によって返すものが違うのかもしれません。 その先はスレ違いになるので自分でいろいろやってみます。ありがとうございました。 0640デフォルトの名無しさん (ワッチョイ 666d-fl5W)2017/07/30(日) 15:24:50.24ID:LIjBkUDz0 api以外でgoogleの検索結果を取得しないほうがいい すぐにアクセス禁止になる 0641デフォルトの名無しさん (アウーイモ MM9f-GszO)2017/08/02(水) 00:57:39.97ID:O3oN8G+MM Function Name2Adr(str As String) Dim Cts As Folder, Ct As ContactItem Set Cts = CreateObject("Outlook.Application").GetNamespace("MAPI").GetDefaultFolder(olFolderContacts) Set Ct = Cts.Items.Find("[Email1DisplayName] = '" & str & "'")
If Ct Is Nothing Then Name2Adr = "不明" Else Name2Adr = Ct.Email1Address
Set Cts = Nothing: Set Ct = Nothing End Function ↑ローカルのアドレス帳から表示名を検索しメアドを返す関数です。これはうまくいくのですが、 ↓下のグローバルアドレス帳を検索するものがうまくいきません。エラーメッセージは「オブジェクトはこのプロパティまたはメソッドをサポートしていません」です。 どなたか解決法をご教示ください。よろしくお願いします。 Function gName2Adr(str As String) Dim olApplication As Outlook.Application Dim olNameSpace As Outlook.Namespace Dim olAddressLists As Outlook.AddressLists Dim olAddressList As Outlook.AddressList Dim olAddressEntries As Outlook.AddressEntries
Set olApplication = New Outlook.Application Set olNameSpace = olApplication.Session Set olAddressLists = olNameSpace.AddressLists Set olAddressList = olAddressLists.Item(2) Set olAddressEntries = olAddressList.AddressEntries
Dim olAddressEntry As Outlook.AddressEntry Set olAddressEntry = olAddressEntries.Items.Find("[Email1DisplayName] = '" & str & "'") '←この行でエラー If olAddressEntry Is Nothing Then gName2Adr = "不明" Else gName2Adr = olAddressEntry.Email1Address End Function 0642デフォルトの名無しさん (アウアウカー Safb-IFL0)2017/08/02(水) 02:57:39.31ID:9fnjiac4a>>641 名前長いな 0643デフォルトの名無しさん (オッペケ Srb3-ZCwv)2017/08/02(水) 06:22:21.40ID:Yub86NHXr 少々長くてもわかりやすい名前をつけるのが基本だからね。 ハンガリアンよりは全然いい。 0644デフォルトの名無しさん (ワッチョイ 0f3d-HJpE)2017/08/02(水) 06:31:28.66ID:SLRN4nNP0 少々長くても分かりやすい名前を付ける、それがハンガリアン記法