!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
スレ立ての際は一行目に
!extend:checked:vvvvv:1000:512
と入れてスレ立てして下さい
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part48
http://mevius.2ch.net/test/read.cgi/tech/1494890685/
※関連スレ
VBAなんでも質問スレ Part2
http://mevius.2ch.net/test/read.cgi/tech/1432173164/
Access VBA 質問スレ Part1
http://mevius.2ch.net/test/read.cgi/tech/1328536426/
Excel総合相談所 126
https://mevius.2ch.net/test/read.cgi/bsoft/1496487719/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
Excel VBA 質問スレ Part49©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ bb2e-8SzA)
2017/06/26(月) 02:15:14.60ID:T3ylemnb0578デフォルトの名無しさん (ワッチョイ dfaa-E/h9)
2017/07/26(水) 22:32:43.94ID:kYPrva630 >>577
ごめんVBAから直接には使えなかった
ごめんVBAから直接には使えなかった
579デフォルトの名無しさん (ワッチョイ bf23-FdGq)
2017/07/26(水) 23:08:50.27ID:+wB1yzpw0580デフォルトの名無しさん (ワッチョイ bf23-FdGq)
2017/07/26(水) 23:11:34.30ID:+wB1yzpw0 vbaでオブジェクト指向とか中級者がやることだな。
初心者よりタチ悪いこともある。
初心者よりタチ悪いこともある。
581デフォルトの名無しさん (ワッチョイ dfaa-E/h9)
2017/07/26(水) 23:58:17.75ID:kYPrva630 上級者はなにするんだ?
582デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 00:50:19.96ID:Gu8HEug70583デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 01:05:44.74ID:Gu8HEug70 >>571
VBAと言う言語にクラスとかオブジェクト指向の概念が入っている
つまりオブジェクト指向の概念は言語にもつながる
と言う主張
一方でオブジェクト指向は設計にのみ関わる概念と言う主張もある
オブジェクト指向の概念を取り入れた言語でオブジェクト指向設計したものを実現するのと
オブジェクト指向の概念がない言語で実現するのでは
生産性とかに差が生じるだろう
VBAと言う言語にクラスとかオブジェクト指向の概念が入っている
つまりオブジェクト指向の概念は言語にもつながる
と言う主張
一方でオブジェクト指向は設計にのみ関わる概念と言う主張もある
オブジェクト指向の概念を取り入れた言語でオブジェクト指向設計したものを実現するのと
オブジェクト指向の概念がない言語で実現するのでは
生産性とかに差が生じるだろう
584デフォルトの名無しさん (ワッチョイ 2623-toSE)
2017/07/27(木) 01:36:25.07ID:Ddw23w1u0585デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 01:54:44.40ID:Gu8HEug70586l (ワッチョイ 0fcf-GNib)
2017/07/27(木) 02:24:19.55ID:lqCZB24a0 Youtuberヒカルが月収を明らかに!!おはよう朝日です出演
https://www.youtube.com/watch?v=RLZGrqQnnZc
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
https://www.youtube.com/watch?v=asF2wQ2xhjY&t=61s
ユーチューバーの儲けのカラクリを徹底検証!
https://www.youtube.com/watch?v=FUSb4erJSXE&t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
https://www.youtube.com/watch?v=Y7DAQ0RKilM&t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます
https://www.youtube.com/watch?v=E4q-vaQh2EQ&t=118s
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法
https://www.youtube.com/watch?v=Fr0WXXZRMSQ
最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいい
顔出したくないならラファエルみたいに仮面かぶればいい
手っ取り早く視聴数稼ぐには有名ユーチューバーへの物申す系動画がオススメ
https://www.youtube.com/watch?v=RLZGrqQnnZc
第1回案件王ランキング!YouTuberで1番稼いでるのは誰だ!
https://www.youtube.com/watch?v=asF2wQ2xhjY&t=61s
ユーチューバーの儲けのカラクリを徹底検証!
https://www.youtube.com/watch?v=FUSb4erJSXE&t=504s
【給料公開】チャンネル登録者4万人突破記念!YouTuberの月収公開!
https://www.youtube.com/watch?v=Y7DAQ0RKilM&t=326s
誰も言わないなら俺がYouTuberのギャラ相場を教えます
https://www.youtube.com/watch?v=E4q-vaQh2EQ&t=118s
YouTuberになりたいのは馬鹿じゃない!YouTuberになる方法
https://www.youtube.com/watch?v=Fr0WXXZRMSQ
最高月収5000万円だとさ。年収じゃなくて「月収」な
おまえらもyoutubeに動画投稿したほうがいい
顔出したくないならラファエルみたいに仮面かぶればいい
手っ取り早く視聴数稼ぐには有名ユーチューバーへの物申す系動画がオススメ
587デフォルトの名無しさん (ワッチョイ 2623-toSE)
2017/07/27(木) 04:56:34.97ID:Ddw23w1u0 >>585
クラスやらユーザ定義型を作るね。
クラスやらユーザ定義型を作るね。
588デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/07/27(木) 05:41:33.30ID:8/6stQ5Xr >>584
つ 上級者の定義
つ 上級者の定義
589デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 06:25:09.17ID:Gu8HEug70590デフォルトの名無しさん (ドコグロ MM8a-gqKx)
2017/07/27(木) 06:47:24.74ID:P1js1uXhM >>582
> なぜ?
> 逆にスーパークラスに相当する関数に
> スイッチみたいな引数を付けて
> サブクラスに相当する関数に分岐するとか
サブクラスを増やす度にスーパークラスに手を入れるつもりなの?
真顔で言ってるなら単なるアホだろ w
> で、どうするの?
無理じゃね?
って書いてあるんだが...
> なぜ?
> 逆にスーパークラスに相当する関数に
> スイッチみたいな引数を付けて
> サブクラスに相当する関数に分岐するとか
サブクラスを増やす度にスーパークラスに手を入れるつもりなの?
真顔で言ってるなら単なるアホだろ w
> で、どうするの?
無理じゃね?
って書いてあるんだが...
591デフォルトの名無しさん (ドコグロ MM8a-gqKx)
2017/07/27(木) 07:00:09.74ID:P1js1uXhM >>585
> 各シートの統計情報を取りたい時はどうする?
要件次第
> 例えば、セルを更新した回数、最大値、最小値、平均値
> を各シート毎に知りたい時
更新回数以外は全セルなめて計算することもあるしイベント毎に合計、最大、最小を更新していくのもあるだろうな
> 後から分散とか標準偏差とかも知りたくなったらどうする?
そういう機能を実装するだけ
イベント以外はオブジェクト指向関係ないと思うぞ
> 各シートの統計情報を取りたい時はどうする?
要件次第
> 例えば、セルを更新した回数、最大値、最小値、平均値
> を各シート毎に知りたい時
更新回数以外は全セルなめて計算することもあるしイベント毎に合計、最大、最小を更新していくのもあるだろうな
> 後から分散とか標準偏差とかも知りたくなったらどうする?
そういう機能を実装するだけ
イベント以外はオブジェクト指向関係ないと思うぞ
592デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 07:12:45.05ID:Gu8HEug70 >>590
でいちいち同じ処理をコピペするの?
でいちいち同じ処理をコピペするの?
593デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 07:13:37.01ID:Gu8HEug70 >>591
生産性が違うんじゃね?
生産性が違うんじゃね?
594デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 07:15:00.43ID:Gu8HEug70 >>591
全セルなめるとか性能要件を満たせなくなる可能性が高いだろ
全セルなめるとか性能要件を満たせなくなる可能性が高いだろ
595デフォルトの名無しさん (ワッチョイ 666d-V1Wy)
2017/07/27(木) 07:17:39.18ID:mlaDFoVL0596デフォルトの名無しさん (ワッチョイ db91-ntdb)
2017/07/27(木) 07:17:56.55ID:Gu8HEug70 >>590
サブクラスからスーパークラスを呼ぶ方は?
サブクラスからスーパークラスを呼ぶ方は?
597デフォルトの名無しさん (ドコグロ MM8a-gqKx)
2017/07/27(木) 07:37:59.47ID:P1js1uXhM598デフォルトの名無しさん (ワッチョイ 2623-toSE)
2017/07/27(木) 07:40:20.87ID:Ddw23w1u0599デフォルトの名無しさん (アウアウエー Sae2-kGGk)
2017/07/27(木) 08:16:42.60ID:LMuXn2N9a >>575
結局それだと要らんもんまで呼び出したり不便なんだよ
やれんことはないけど不便
オーバーロードもやれんことはないけど実装がめんどくさい
使いたい場面は結構出てくると思うけどね
インターフェースもなんかスマートじゃないし
結局それだと要らんもんまで呼び出したり不便なんだよ
やれんことはないけど不便
オーバーロードもやれんことはないけど実装がめんどくさい
使いたい場面は結構出てくると思うけどね
インターフェースもなんかスマートじゃないし
600デフォルトの名無しさん (ワッチョイ 1f73-cdfR)
2017/07/27(木) 08:50:43.35ID:f8l+azOG0 お前らスレタイ読んで他所へ行け
601デフォルトの名無しさん (ワッチョイ db5a-PZKh)
2017/07/27(木) 09:44:44.74ID:cQuO+1bD0 【IT】10代のネット環境「スマホのみ」が7割、「PCのみ」は25%にとどまる [無断転載禁止]©2ch.net
http://egg.2ch.net/test/read.cgi/bizplus/1500900491/
http://egg.2ch.net/test/read.cgi/bizplus/1500900491/
602デフォルトの名無しさん (スップ Sd8a-y7IM)
2017/07/27(木) 09:49:36.92ID:yI2DKD3yd >>600
クラスモジュールがある以上、このスレの話題として守備範囲内
クラスモジュールがある以上、このスレの話題として守備範囲内
603デフォルトの名無しさん (JP 0H76-ZO1u)
2017/07/27(木) 10:22:34.31ID:ZNB0F0Q0H >>554
> ライター、チャッカマン、バーナーが他所であるのにマッチでも火をおこせるしこれはこれで良いもんだぞって言ってるようなもん
マッチだけでも十分OOできる
それにWithEventsもあるしね
https://github.com/rubberduck203/VBEX のソース読んだか?以外といろいろできるぞ
> ライター、チャッカマン、バーナーが他所であるのにマッチでも火をおこせるしこれはこれで良いもんだぞって言ってるようなもん
マッチだけでも十分OOできる
それにWithEventsもあるしね
https://github.com/rubberduck203/VBEX のソース読んだか?以外といろいろできるぞ
604デフォルトの名無しさん (スップ Sd8a-y7IM)
2017/07/27(木) 10:40:17.72ID:yI2DKD3yd605デフォルトの名無しさん (JP 0H76-ZO1u)
2017/07/27(木) 10:55:11.44ID:ZNB0F0Q0H >>604
> これはあなたが作者さんなの?
いや、俺じゃないよ
コードサンプルとして読んでみたらってこと
あとこれとか
https://github.com/jpimbert/VBAToolKit/tree/master/Source/VbaUnit
OOの知識があって、いわゆる「インターフェース継承」を視野に入れれば、かなりのことができる
さらに、WithEventsを使えば双方向データバインディングなんかも実装できる
> これはあなたが作者さんなの?
いや、俺じゃないよ
コードサンプルとして読んでみたらってこと
あとこれとか
https://github.com/jpimbert/VBAToolKit/tree/master/Source/VbaUnit
OOの知識があって、いわゆる「インターフェース継承」を視野に入れれば、かなりのことができる
さらに、WithEventsを使えば双方向データバインディングなんかも実装できる
606デフォルトの名無しさん (ドコグロ MM22-toSE)
2017/07/27(木) 11:24:49.36ID:698/A489M インタフェースなんかvbaで使うなボケ
607デフォルトの名無しさん (スップ Sd8a-y7IM)
2017/07/27(木) 11:56:09.26ID:yI2DKD3yd608デフォルトの名無しさん (アークセー Sxb3-PRKf)
2017/07/27(木) 12:01:06.07ID:SAqwCo2Mx >>606
ほーわーいー
ほーわーいー
609デフォルトの名無しさん (スップ Sd8a-y7IM)
2017/07/27(木) 12:17:23.37ID:yI2DKD3yd チンリン山脈
610デフォルトの名無しさん (アウアウエー Sae2-kGGk)
2017/07/27(木) 13:24:05.39ID:LMuXn2N9a >>603
いやだからさ
俺の言いたいこと伝わらないし理解する気無いよね
こっちはマッチしか無いから仕方なくマッチ使ってんの
不満だからって努力を放棄してるわけじゃないからな?
ただどう考えても手間だろ
そんだけの話
いやだからさ
俺の言いたいこと伝わらないし理解する気無いよね
こっちはマッチしか無いから仕方なくマッチ使ってんの
不満だからって努力を放棄してるわけじゃないからな?
ただどう考えても手間だろ
そんだけの話
611デフォルトの名無しさん (JP 0H76-ZO1u)
2017/07/27(木) 14:02:53.37ID:ZNB0F0Q0H >>610
君も俺の言いたいこと1ミリも理解しようとしてないから、お互い様だね
君も俺の言いたいこと1ミリも理解しようとしてないから、お互い様だね
612デフォルトの名無しさん (ササクッテロル Spb3-ntdb)
2017/07/27(木) 14:43:39.94ID:DPiXNUUHp613デフォルトの名無しさん (ドコグロ MM8a-gqKx)
2017/07/27(木) 16:09:11.81ID:P1js1uXhM614デフォルトの名無しさん (ワッチョイ ea06-HJpE)
2017/07/27(木) 16:44:21.21ID:7xCZa4oD0 だからさぁお前らは雑談したいだけだろ?スレ立ててそこでやれっつーの
クソうぜぇ
クソうぜぇ
615デフォルトの名無しさん (アウアウエー Sae2-kGGk)
2017/07/27(木) 16:44:34.77ID:uf/My/5wa >>611
使い方によってはvbaだってoopできるよ!って言いたいんでしょ?
使い方によってはvbaだってoopできるよ!って言いたいんでしょ?
616デフォルトの名無しさん (JP 0H76-ZO1u)
2017/07/27(木) 17:00:44.58ID:ZNB0F0Q0H617デフォルトの名無しさん (スップ Sd8a-y7IM)
2017/07/27(木) 17:11:23.71ID:yI2DKD3yd 使いたいときに便利な機能を自由につまみ食いできるのがいいライブラリだと思っているんだが、
オブジェクト指向のライブラリって少しおせっかいというか世界観を押し付けてくるところがある。
会員にならないと利用できないサービスみたいな感じ。
自分で作ったものを自分で利用する分には当然問題ないんだけどね。
VBAの言語機能の弱さを考えると、クラス間の関連のある体系的な使い方を実現するのは厳しいだろう。
オブジェクト指向のライブラリって少しおせっかいというか世界観を押し付けてくるところがある。
会員にならないと利用できないサービスみたいな感じ。
自分で作ったものを自分で利用する分には当然問題ないんだけどね。
VBAの言語機能の弱さを考えると、クラス間の関連のある体系的な使い方を実現するのは厳しいだろう。
618デフォルトの名無しさん (アウアウエー Sae2-kGGk)
2017/07/27(木) 17:44:10.44ID:uf/My/5wa619デフォルトの名無しさん (JP 0H76-ZO1u)
2017/07/27(木) 17:59:09.25ID:ZNB0F0Q0H 経験不足だね
言語10個くらいマスターしてこい
言語10個くらいマスターしてこい
620デフォルトの名無しさん (アウーイモ MM9f-k5Qo)
2017/07/27(木) 19:42:01.40ID:xCwJ4jCdM 某サイトを参考にメールを一括作成するVBAを書いています。
createitemfromtemplateの行で「実行時エラー13 型が一致しません」というエラーが出ます。
どうやらcreateitemfromtemplateがうまく機能していないようなのですが、解決方法を教えていただけませんでしょうか。
よろしくお願いいたします。
※「Microsoft Outlook 14.0 Object Library」の参照設定はONになっています。
-----------------------------------
Sub main()
Dim OL As New Outlook.Application
Dim M As MailItem
Dim MaxRow: MaxRow = Range("A1").End(xlDown).Row
For i = 2 To MaxRow
Set M = OL.createitemfromtemplate("D:\本文.msg")
M.To = Cells(i, 列.件名).Value
M.Subject = Cells(i, 列.件名).Value
M.Attachments.Add "D:\" & Cells(i, 列.添付ファイル).Value
M.HTMLBody = Replace(M.HTMLBody, "●●", Cells(i, 列.氏名).Value)
M.SaveAs "D:\" & Cells(i, 列.企業名).Value & "_" & Cells(i, 列.氏名).Value & ".msg"
Next
End Sub
-----------------------------------
createitemfromtemplateの行で「実行時エラー13 型が一致しません」というエラーが出ます。
どうやらcreateitemfromtemplateがうまく機能していないようなのですが、解決方法を教えていただけませんでしょうか。
よろしくお願いいたします。
※「Microsoft Outlook 14.0 Object Library」の参照設定はONになっています。
-----------------------------------
Sub main()
Dim OL As New Outlook.Application
Dim M As MailItem
Dim MaxRow: MaxRow = Range("A1").End(xlDown).Row
For i = 2 To MaxRow
Set M = OL.createitemfromtemplate("D:\本文.msg")
M.To = Cells(i, 列.件名).Value
M.Subject = Cells(i, 列.件名).Value
M.Attachments.Add "D:\" & Cells(i, 列.添付ファイル).Value
M.HTMLBody = Replace(M.HTMLBody, "●●", Cells(i, 列.氏名).Value)
M.SaveAs "D:\" & Cells(i, 列.企業名).Value & "_" & Cells(i, 列.氏名).Value & ".msg"
Next
End Sub
-----------------------------------
621デフォルトの名無しさん (ワッチョイ 6623-V1Wy)
2017/07/27(木) 20:32:44.20ID:60P4ZjAM0 >>620
msdnのリファレンスをみると
Outlookテンプレート(.oft)を指定しろって書いてあるので
怒られているとおり、型がちがうのでしょう。
CreateItemメソッドを使えばいいんじゃないでしょうか。
msdnのリファレンスをみると
Outlookテンプレート(.oft)を指定しろって書いてあるので
怒られているとおり、型がちがうのでしょう。
CreateItemメソッドを使えばいいんじゃないでしょうか。
622デフォルトの名無しさん (ワッチョイ 0fe4-Tef8)
2017/07/27(木) 21:59:25.00ID:aAe8+IMH0 オブジェクト指向がどうこうって語りたいなら
オブジェクト指向
って言葉と
オブジェクト指向言語
って言葉をちゃんと区別して発言して下さい
オブジェクト指向
って言葉と
オブジェクト指向言語
って言葉をちゃんと区別して発言して下さい
623620 (アウーイモ MM9f-k5Qo)
2017/07/27(木) 22:07:28.99ID:xCwJ4jCdM >>621
返信ありがとうございます!!
すみません、CreateItemでも変わらずエラーでした・・。
ちなみに下記のように.oftを指定しても同じでした。
これは本当に不思議です・・・。
---------------------------------------
Sub test03()
Dim OL As New Outlook.Application
Dim M As MailItem
Set M = OL.CreateItemFromTemplate("D:\本文.oft")
M.To = "aaaa@bbb.co.jp"
M.SaveAs "D:\test03.msg"
End Sub
---------------------------------------
返信ありがとうございます!!
すみません、CreateItemでも変わらずエラーでした・・。
ちなみに下記のように.oftを指定しても同じでした。
これは本当に不思議です・・・。
---------------------------------------
Sub test03()
Dim OL As New Outlook.Application
Dim M As MailItem
Set M = OL.CreateItemFromTemplate("D:\本文.oft")
M.To = "aaaa@bbb.co.jp"
M.SaveAs "D:\test03.msg"
End Sub
---------------------------------------
624デフォルトの名無しさん (ワッチョイ 6aaa-V1Wy)
2017/07/27(木) 22:19:54.50ID:eHKEweRs0 関西のお笑いと関西のお笑い芸人も区別して語るべきなのか?
625デフォルトの名無しさん (アークセー Sxb3-PRKf)
2017/07/27(木) 22:40:28.48ID:SAqwCo2Mx >>624
そうよ
そうよ
626デフォルトの名無しさん (ワッチョイ ea6f-ZO1u)
2017/07/27(木) 22:46:54.67ID:e65zqkX+0 俺予想だと、2023年くらいに.NETと統合されるので、大丈夫じゃないの。
627デフォルトの名無しさん (ワッチョイ 6623-V1Wy)
2017/07/27(木) 23:04:48.75ID:60P4ZjAM0 >>623
Sub test()
Dim ol As New Outlook.Application
Dim mi As MailItem
Set mi = ol.CreateItem(olMailItem)
mi.Display
End Sub
この最小構成でメール編集画面がでるかお試しを。
出なかったら参照設定が変なのかも。
Excelのバージョンが変わると勝手に参照設定のバージョンも
変わるという罠に引っかかったことがあるので。
実行時バインディングでやってみると言う手もあり。
Sub test()
Dim ol As New Outlook.Application
Dim mi As MailItem
Set mi = ol.CreateItem(olMailItem)
mi.Display
End Sub
この最小構成でメール編集画面がでるかお試しを。
出なかったら参照設定が変なのかも。
Excelのバージョンが変わると勝手に参照設定のバージョンも
変わるという罠に引っかかったことがあるので。
実行時バインディングでやってみると言う手もあり。
628620 (アウーイモ MM9f-6wLz)
2017/07/27(木) 23:18:55.37ID:xCwJ4jCdM629デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/07/27(木) 23:25:30.12ID:8/6stQ5Xr '// 1行目の項目名が、A列から順に
'//[アドレス][件名][添付ファイルパス][本文]
'// のとき、
Dim dataSet
Dim lastRow As Long
Dim i As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
dataSet = Range(Cells(2, 1), Cells(lastRow, 4)).Value
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
'//[アドレス][件名][添付ファイルパス][本文]
'// のとき、
Dim dataSet
Dim lastRow As Long
Dim i As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
dataSet = Range(Cells(2, 1), Cells(lastRow, 4)).Value
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
630デフォルトの名無しさん (ワッチョイ 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
End Sub
これをOption Explicitを無効にして実行したら
どうなるでしょうか?
だめならOS再起動してみる。
どうにも理解不能なエラーがこれで直ったことがあるw。
よく考えたら、参照ならその前にエラーを吐きそう。
ためしに
Sub test()
Dim ol As Object
Set ol = CreateObject("Outlook.Application")
Dim mi As Object
Set mi = ol.CreateItem(olMailItem)
mi.Display
End Sub
これをOption Explicitを無効にして実行したら
どうなるでしょうか?
だめならOS再起動してみる。
どうにも理解不能なエラーがこれで直ったことがあるw。
631デフォルトの名無しさん (ワッチョイ 0fe4-Tef8)
2017/07/27(木) 23:56:32.00ID:aAe8+IMH0 >>628
まず、そのユーザーでOutlookはちゃんと動いてメールの送受信できるのか?
まず、そのユーザーでOutlookはちゃんと動いてメールの送受信できるのか?
632620 (アウーイモ MM9f-6wLz)
2017/07/28(金) 00:24:24.58ID:EJW5hZGgM633620 (アウアウアー Sab6-6wLz)
2017/07/28(金) 04:23:09.57ID:Kx1QSHwna 皆様ありがとうございました!
理由はわかりませんが突然できるようになりました!
本当にご迷惑おかけしました!
理由はわかりませんが突然できるようになりました!
本当にご迷惑おかけしました!
634デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/07/28(金) 04:32:44.73ID:ccATQH/dr >>632
ごめん。コード間違ってた。orz
参照設定をoffにし、↓のコードで試してみて。
'// olMailItemを直値(0)に変えた
Dim dataSet
Dim lastRow As Long
Dim i As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
dataSet = Range(Cells(2, 1), Cells(lastRow, 4)).Value
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
ごめん。コード間違ってた。orz
参照設定をoffにし、↓のコードで試してみて。
'// olMailItemを直値(0)に変えた
Dim dataSet
Dim lastRow As Long
Dim i As Long
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
dataSet = Range(Cells(2, 1), Cells(lastRow, 4)).Value
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
635デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/07/28(金) 04:34:16.17ID:ccATQH/dr 一歩遅かったか…orz
637デフォルトの名無しさん (ワッチョイ 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画像検索の結果の画像をセルに表示しようと思ってます。
excel2016で
MSXML2.XMLHTTPを使って
responseTextでgoogle検索結果のページを取得しようとすると、
responseTextで返ってきたものが、今までwin7 excel2007などで返ってきたものと全然違うんですが、win7の時のように受け取る方法ってありませんか?
win7の時はhtmlそのものが返ってきてましたがwin10では最初の方が判読困難です。
やろうとしていることは、vbaでgoogle画像検索の結果の画像をセルに表示しようと思ってます。
638デフォルトの名無しさん (ワッチョイ 6aaa-V1Wy)
2017/07/30(日) 10:16:32.82ID:WZc9I6Vq0 そういえば responseBody しか使ったことないなあ
(adTypeBinary な ADODB オブジェクトに Write するために)
(adTypeBinary な ADODB オブジェクトに Write するために)
639デフォルトの名無しさん (ワッチョイ db11-AITk)
2017/07/30(日) 12:41:33.40ID:ND/Yhbfk0 すみません、いろいろ試してたんですが、google以外ではちゃんと同じようなものを受け取れてました。
googleでは環境によって返すものが違うのかもしれません。
その先はスレ違いになるので自分でいろいろやってみます。ありがとうございました。
googleでは環境によって返すものが違うのかもしれません。
その先はスレ違いになるので自分でいろいろやってみます。ありがとうございました。
640デフォルトの名無しさん (ワッチョイ 666d-fl5W)
2017/07/30(日) 15:24:50.24ID:LIjBkUDz0 api以外でgoogleの検索結果を取得しないほうがいい
すぐにアクセス禁止になる
すぐにアクセス禁止になる
641デフォルトの名無しさん (アウーイモ 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
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
642デフォルトの名無しさん (アウアウカー Safb-IFL0)
2017/08/02(水) 02:57:39.31ID:9fnjiac4a >>641
名前長いな
名前長いな
643デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/08/02(水) 06:22:21.40ID:Yub86NHXr 少々長くてもわかりやすい名前をつけるのが基本だからね。
ハンガリアンよりは全然いい。
ハンガリアンよりは全然いい。
644デフォルトの名無しさん (ワッチョイ 0f3d-HJpE)
2017/08/02(水) 06:31:28.66ID:SLRN4nNP0 少々長くても分かりやすい名前を付ける、それがハンガリアン記法
想像してるのはたぶんシステムハンガリアン記法
想像してるのはたぶんシステムハンガリアン記法
645デフォルトの名無しさん (ワキゲー MMa2-lmxC)
2017/08/02(水) 07:20:47.27ID:Mrcj6vwlM 変数はAddressなのにメソッド名はAdrで統一してないのは理由あるの?
646デフォルトの名無しさん (アークセー Sxb3-h9ZP)
2017/08/02(水) 07:40:08.64ID:ed9o3kBwx 変数名長いなぁ
olAppとかAdrListとかにすれば良いやん
olAppとかAdrListとかにすれば良いやん
647デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/08/02(水) 07:40:35.97ID:Yub86NHXr648デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/08/02(水) 07:44:09.62ID:Yub86NHXr649デフォルトの名無しさん (ワッチョイ 666d-V1Wy)
2017/08/02(水) 07:44:43.49ID:boOv7Sns0650デフォルトの名無しさん (ドコグロ MM22-gqKx)
2017/08/02(水) 08:11:17.19ID:i5+f8wczM >>649
参照設定してないだけじゃね?
参照設定してないだけじゃね?
651デフォルトの名無しさん (ワッチョイ 666d-F3YI)
2017/08/02(水) 08:56:23.68ID:boOv7Sns0652デフォルトの名無しさん (ワッチョイ ea2e-ZO1u)
2017/08/02(水) 09:10:48.85ID:Y/LidHA/0 >>650
649は店に来たお客さんのつもりのようだから、まともに相手する必要はないよ
649は店に来たお客さんのつもりのようだから、まともに相手する必要はないよ
653デフォルトの名無しさん (オイコラミネオ MMb6-cdfR)
2017/08/02(水) 11:50:02.54ID:a22879YUM 単なる自己満足なんだからそこまで突っ込むなよ
どうせ永遠に平行線なんだろ?
どうせ永遠に平行線なんだろ?
654デフォルトの名無しさん (ワキゲー MMa2-lmxC)
2017/08/02(水) 12:08:29.03ID:pZ2w6jYsM655デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/08/02(水) 12:26:23.95ID:Yub86NHXr656デフォルトの名無しさん (ワキゲー MMa2-lmxC)
2017/08/02(水) 12:33:57.68ID:x+1N4OhAM >>655
言語関係なくただのキャメルケースだよ
言語関係なくただのキャメルケースだよ
657641 (オイコラミネオ MMb6-Cs75)
2017/08/02(水) 13:14:55.44ID:1uis+HfsM658デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/08/02(水) 15:50:17.32ID:Yub86NHXr >>656
いや、だからメソッドをキャメルケースにするのは何流なのかなと。
いや、だからメソッドをキャメルケースにするのは何流なのかなと。
659デフォルトの名無しさん (アウアウエー Sae2-kGGk)
2017/08/02(水) 16:45:06.13ID:pmz5Ebvba >>658
javascriptはキャメルだと思う
javascriptはキャメルだと思う
660641 (オイコラミネオ MMb6-Cs75)
2017/08/02(水) 16:56:06.29ID:uQ5PKG3iM661デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/08/02(水) 18:07:23.96ID:Yub86NHXr662デフォルトの名無しさん (ドコグロ MM22-gqKx)
2017/08/02(水) 18:28:23.95ID:i5+f8wczM >>660
Outlook VBA スレないからまあここでもいいと思うが仕事中に軽くググった範疇だといい方法が見つからん
> Set olAddressEntry = olAddressEntries.Items.Find("[Email1DisplayName] = '" & str & "'") '←この行でエラー
Items.Find( ) は Folder オブジェクトしか持ってないからここでエラーになるのは当然
グローバルアドレス帳(Global Address List)は GetGlobalAddressList( ) で取得できるし内容も入っているんだが取得したリストの GetContactsFolder( ) を呼び出しても Nothing しか返ってこない
何か設定が要るのか根本的に頓珍漢なのかさっぱりわからん
Outlook VBA スレないからまあここでもいいと思うが仕事中に軽くググった範疇だといい方法が見つからん
> Set olAddressEntry = olAddressEntries.Items.Find("[Email1DisplayName] = '" & str & "'") '←この行でエラー
Items.Find( ) は Folder オブジェクトしか持ってないからここでエラーになるのは当然
グローバルアドレス帳(Global Address List)は GetGlobalAddressList( ) で取得できるし内容も入っているんだが取得したリストの GetContactsFolder( ) を呼び出しても Nothing しか返ってこない
何か設定が要るのか根本的に頓珍漢なのかさっぱりわからん
663デフォルトの名無しさん (オッペケ Srb3-ZCwv)
2017/08/02(水) 19:58:09.08ID:Yub86NHXr664620 (アウアウアー Sa83-zhMW)
2017/08/03(木) 06:23:52.11ID:y8hiM9O7a >>662
ありがとうございます!勉強になります。
> グローバルアドレス帳(Global Address List)は GetGlobalAddressList( ) で取得できるし内容も入っているんだが
↑その内容というのは、debug.printで見ることはできますでしょうか??
ありがとうございます!勉強になります。
> グローバルアドレス帳(Global Address List)は GetGlobalAddressList( ) で取得できるし内容も入っているんだが
↑その内容というのは、debug.printで見ることはできますでしょうか??
665デフォルトの名無しさん (ワッチョイ 3b6d-dE0h)
2017/08/03(木) 07:51:33.57ID:T58VKPgl0666デフォルトの名無しさん (ドコグロ MM4b-/F0N)
2017/08/03(木) 08:16:18.57ID:8PSWLe0hM >>664
Set GlobalAddressList = Namespace.GlobalAddressList( )
Debug.Print GlobalAddressList.AddressEntries.Item(1).Name
とかすれば見れるよ
全件エクスポートするサンプルとかあるので見てみて
https://www.slipstick.com/developer/code-samples/export-exchange-gal-excel/
Set GlobalAddressList = Namespace.GlobalAddressList( )
Debug.Print GlobalAddressList.AddressEntries.Item(1).Name
とかすれば見れるよ
全件エクスポートするサンプルとかあるので見てみて
https://www.slipstick.com/developer/code-samples/export-exchange-gal-excel/
667デフォルトの名無しさん (オイコラミネオ MM4b-1llH)
2017/08/04(金) 13:47:28.51ID:2SBD/wKoM バージョンが上がって日付時刻型の除算ができなくなりました。バリアント型にしても空になります。
対応方法はありませんでしょうか?
また、こういう仕様変更はどこで確認できますか?
対応方法はありませんでしょうか?
また、こういう仕様変更はどこで確認できますか?
668デフォルトの名無しさん (スプッッ Sdaf-pRZg)
2017/08/04(金) 19:09:28.11ID:HbiPV4wFd669デフォルトの名無しさん (ワッチョイ 3b6d-dE0h)
2017/08/04(金) 19:49:21.85ID:EaU+sIDF0 日付じゃなくて時刻(時間)で除算したいのでは?
1950/1/1を2で割って1925/1/1…なんてことはしないだろう
>>667
office 更新プログラム等で検索
https://support.office.com/ja-jp/article/Office-%E6%9B%B4%E6%96%B0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0-a118ec61-f007-492f-bfa5-5a6f764d5471
1950/1/1を2で割って1925/1/1…なんてことはしないだろう
>>667
office 更新プログラム等で検索
https://support.office.com/ja-jp/article/Office-%E6%9B%B4%E6%96%B0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%A0-a118ec61-f007-492f-bfa5-5a6f764d5471
670デフォルトの名無しさん (ワッチョイ cf11-1llH)
2017/08/04(金) 20:11:22.22ID:CfFJ59fY0 時刻ですね
671デフォルトの名無しさん (オッペケ Sr1f-bQt4)
2017/08/05(土) 08:53:42.25ID:3n3qQbM6r672デフォルトの名無しさん (ワッチョイ a16f-/FH4)
2017/08/05(土) 09:48:36.05ID:7J5Re5fS0 2010でも時刻の割り算できたけど?
673デフォルトの名無しさん (オッペケ Sr1f-bQt4)
2017/08/05(土) 10:09:48.61ID:3n3qQbM6r じゃあ、この話題はこれで終わりだな。
674デフォルトの名無しさん (ワッチョイ cf11-4x8g)
2017/08/05(土) 11:28:42.39ID:J2w+rLAY0 エラーコードは51
データ型が日付時刻の除算はエラーでる
データ型が日付時刻の除算はエラーでる
675デフォルトの名無しさん (ワッチョイ 3b6d-rm2g)
2017/08/05(土) 12:58:50.71ID:kXEyZiX90 Sub foo()
bar = Date / 2
Debug.Print bar
End Sub
2010、win7だけどエラーでない
bar = Date / 2
Debug.Print bar
End Sub
2010、win7だけどエラーでない
676デフォルトの名無しさん (ワッチョイ cf11-4x8g)
2017/08/05(土) 13:00:51.75ID:J2w+rLAY0 >>675
時刻同士で割って見て
時刻同士で割って見て
677デフォルトの名無しさん (ワッチョイ 2b11-ysrI)
2017/08/05(土) 13:07:29.37ID:j7okUzoP0 ダブルにキャストしてから計算したら
ずれるのかな?
ずれるのかな?
678デフォルトの名無しさん (ワッチョイ 3b6d-iBdB)
2017/08/05(土) 13:08:47.84ID:kXEyZiX90■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相、トランプ米大統領に「早期に会いたい」 日中関係悪化受け… ★3 [BFU★]
- 小島瑠璃子さん、代表取締役を務める会社を破産申請 [牛丼★]
- 「これいいじゃん!!!」 セブン-イレブンの1620円で買える“1人用クリスマスケーキ”🎂に注目殺到「天才すぎる」 [パンナ・コッタ★]
- 【コメ】卸売業者「簡単に安売りできない」「大暴落起きれば大赤字に」 JA「新米の販売進度が近年になく遅い。コメの回転が悪い」 ★4 [Hitzeschleier★]
- 「残クレ」でマイホーム、国が銀行向け保険 新型住宅ローン普及促す -日経 ★3 [少考さん★]
- 高市早苗首相が天理教系企業に“巨額発注” 総額5000万円 本人は「政治団体の活動に必要な支出」と回答 [Hitzeschleier★]
- ANAとJAL、地方10空港で設備・人員を一体運用、国内線低迷で協業深化 [943688309]
- 【安倍晋三】中国船4隻が領海侵入 [828897501]
- 【実況】博衣こよりのえちえちスーパーダンガンロンパ3🧪
- 今の時勢だからこそできる賢く稼げる方法を教えてやるよwww
- えちえち女だけど
- お
