<?xml version="1.0" encoding="utf-8"?>

<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:admin="http://webns.net/mvcb/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:cc="http://web.resource.org/cc/"
  xmlns="http://purl.org/rss/1.0/">

<channel rdf:about="http://wordvba.cocolog-nifty.com/blog/">
<title>みんなのワードマクロ</title>
<link>http://wordvba.cocolog-nifty.com/blog/</link>
<description>翻訳に使えるワードマクロを作ろう！</description>
<dc:language>ja-JP</dc:language>
<dc:creator></dc:creator>
<dc:date>2009-11-08T20:39:25+09:00</dc:date>
<admin:generatorAgent rdf:resource="http://www.typepad.com/" />


<items>
<rdf:Seq><rdf:li rdf:resource="http://wordvba.cocolog-nifty.com/blog/2009/11/post-a4c2.html" />
<rdf:li rdf:resource="http://wordvba.cocolog-nifty.com/blog/2009/10/replace-d110.html" />
<rdf:li rdf:resource="http://wordvba.cocolog-nifty.com/blog/2009/10/post-7a39.html" />
<rdf:li rdf:resource="http://wordvba.cocolog-nifty.com/blog/2009/10/post-8388.html" />
<rdf:li rdf:resource="http://wordvba.cocolog-nifty.com/blog/2009/10/post-5426.html" />
</rdf:Seq>
</items>

</channel>

<item rdf:about="http://wordvba.cocolog-nifty.com/blog/2009/11/post-a4c2.html">
<title>マクロインストーラーの更新</title>
<link>http://wordvba.cocolog-nifty.com/blog/2009/11/post-a4c2.html</link>
<description>すでにお気づきの方もいらっしゃったかと思いますが、 以前こちらで紹介したマクロイ...</description>
<content:encoded>&lt;p&gt;すでにお気づきの方もいらっしゃったかと思いますが、&lt;br /&gt;以前&lt;a href=&quot;http://wordvba.cocolog-nifty.com/blog/2009/03/post-0dd3.html&quot;&gt;こちら&lt;/a&gt;で紹介したマクロインストーラーを更新いたしました。&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.vector.co.jp/soft/win95/writing/se479011.html&quot;&gt;ベクター&lt;/a&gt;にてインストーラーを公開しております。&lt;br /&gt;使用方法も書かれていますので、ご覧ください。&lt;/p&gt;

&lt;p&gt;【前回からの主要な変更点】&lt;br /&gt;インストールするマクロテンプレートを、ダイアログから&lt;br /&gt;指定できるようになりました。&lt;/p&gt;

&lt;p&gt;テンプレートフォルダ中の「Normal.dot」ファイルが&lt;br /&gt;表示されないようにしました。（このファイルを移動&lt;br /&gt;したり削除したりすると、現在のワードの設定が&lt;br /&gt;消えてしまいます。今までは、その配慮が足りませんでした。）&lt;/p&gt;

&lt;p&gt;お試しください。&lt;/p&gt;</content:encoded>


<dc:subject>②登録方法</dc:subject>

<dc:creator>WordVBA</dc:creator>
<dc:date>2009-11-08T20:39:25+09:00</dc:date>
</item>
<item rdf:about="http://wordvba.cocolog-nifty.com/blog/2009/10/replace-d110.html">
<title>Replace関数の例：右クリックでグーグルに活用してみた。</title>
<link>http://wordvba.cocolog-nifty.com/blog/2009/10/replace-d110.html</link>
<description>先週のコメントにてKonnoさんから教えていただいたReplace関数 を用いた...</description>
<content:encoded>&lt;p dir=&quot;ltr&quot;&gt;先週の&lt;a href=&quot;http://wordvba.cocolog-nifty.com/blog/2009/10/post-7a39.html&quot;&gt;コメント&lt;/a&gt;にてKonnoさんから教えていただいたReplace関数&lt;br /&gt;を用いたプログラムです。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;以下、ここ１年ほどの、私がつくってきた同じプログラムの改良の過程です。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;２００８年８月３日に公開した&lt;a href=&quot;http://wordvba.cocolog-nifty.com/blog/2008/08/post_6cf0.html&quot;&gt;右クリックでグーグルのテンプレート&lt;/a&gt;&lt;br /&gt;に掲載されていたプログラムを初代として、現在までに改良した&lt;br /&gt;４世代を紹介します。（初代以降は、本日初公開）&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;当初、８０行かけて書いていた「右クリックでグーグル_ワイルドカード検索」&lt;br /&gt;ですが、いろんな学びをへて、今日書いたプログラムはたった４行です。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;ご興味がある方、長いですが見比べてみてください。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;無駄がたくさんあったプログラムが、ちょっとした知識で変わっていく&lt;br /&gt;過程がみれますね。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;自分でも成長を実感できてうれしいかぎりです。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;Konnoさん、どうもありがとうございました。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;ちなみに、処理スピードですが、体感スピードは全く変わりません。&lt;br /&gt;それが、VBAの楽しいところですね。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;ヘルプを活用して新しい関数を使って”高度な”プログラム&lt;br /&gt;をかけなくても、基礎にのっとって、”エラーのない泥臭い”プログラムを&lt;br /&gt;書けば、結果は同じことが得られるんですね。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;パソコンの処理性能が上がったおかげで、このような状態なんだと&lt;br /&gt;思います。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;私たち初心者プログラマーにはうれしいことですね。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;▼第４世代プログラム　２００９年１０月３１日&lt;br /&gt;ポイント　Replace関数の利用（Split関数利用を中止）&lt;br /&gt;Split関数で必要とされていた「半角スペースが選択されていない場合の&lt;br /&gt;エラー処理」が不要になりました。&lt;br /&gt;第３世代で省略した「全角スペース区切り文字列」へも対応します。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;結果、２５行→４行&lt;/p&gt;&lt;blockquote dir=&quot;ltr&quot;&gt;&lt;p dir=&quot;ltr&quot;&gt;Sub 第４世代_グーグル検索_ワイルドカード()&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim phrase As String&amp;nbsp; &amp;nbsp; &#39;複数の単語の塊&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim URL As String&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;開きたいサイトのＵＲＬ&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;抽出した単語から検索用のフレーズを作る（半角スペース区切り）&lt;br /&gt;10&amp;nbsp; &amp;nbsp; phrase = Replace(Selection.Range, &amp;quot; &amp;quot;, &amp;quot;+*+&amp;quot;)&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;抽出した単語から検索用のフレーズを作る（全角スペース区切り）&lt;br /&gt;20&amp;nbsp; &amp;nbsp; phrase = Replace(phrase, &amp;quot;　&amp;quot;, &amp;quot;+*+&amp;quot;)&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;30&amp;nbsp; &amp;nbsp; URL = &amp;quot;&lt;a href=&quot;http://www.google.co.jp/search?q=%22&quot;&gt;http://www.google.co.jp/search?q=%22&lt;/a&gt;&amp;quot; &amp;amp; phrase &amp;amp; &amp;quot;%22&amp;amp;lr=&amp;quot;&lt;br /&gt;40&amp;nbsp; &amp;nbsp; ActiveDocument.FollowHyperlink address:=URL, AddHistory:=True&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;End Sub&lt;/p&gt;&lt;/blockquote&gt;&lt;p dir=&quot;ltr&quot;&gt;▼第３世代プログラム　２００９年７月２６日&lt;br /&gt;ポイント　１００行のSplit関数、１２０行のUBound関数の利用&lt;br /&gt;区切られた単語の数を数える必要がなくなったので、行数削減&lt;br /&gt;半角スペースで区切られた文字列を検索するようにした&lt;br /&gt;以前は対象としていた「全角スペース区切りの文字列の処理」は、&lt;br /&gt;Split関数使用にあたり省略&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;結果、４５行→２５行へ&lt;/p&gt;&lt;blockquote dir=&quot;ltr&quot;&gt;&lt;p dir=&quot;ltr&quot;&gt;Sub 第３世代_グーグル検索_ワイルドカード()&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim phrase As String&amp;nbsp; &amp;nbsp; &#39;複数の単語の塊&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim URL As String&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;開きたいサイトのＵＲＬ&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim SS, SE As Long&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;選択した文字列のカーソル位置&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim myRange As Range&amp;nbsp; &amp;nbsp; &#39;レンジオブジェクト&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim strWord() As String &#39;半角スペースで区切られた文字列&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim i As Integer&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;10&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; On Error GoTo vct_グーグル検索_ワイルドカード_Error&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;20&amp;nbsp; &amp;nbsp; SS = Selection.Start&lt;br /&gt;30&amp;nbsp; &amp;nbsp; SE = Selection.End&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;Rangeオブジェクトの設定&lt;br /&gt;40&amp;nbsp; &amp;nbsp; Set myRange = ActiveDocument.Range&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;選択範囲の最後が改行記号の場合の処理&lt;br /&gt;50&amp;nbsp; &amp;nbsp; myRange.SetRange Start:=SE - 1, End:=SE&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;60&amp;nbsp; &amp;nbsp; If myRange = chr(13) Then&lt;br /&gt;70&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; SE = SE - 1&lt;br /&gt;80&amp;nbsp; &amp;nbsp; End If&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;単語の検索（半角・全角スペース以外の文字列を検索します）&lt;br /&gt;90&amp;nbsp; &amp;nbsp; myRange.SetRange Start:=SS, End:=SE&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;選択したフレーズ中の単語を抽出&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;区切り文字を&amp;quot; &amp;quot;（半角スペース）に設定&lt;br /&gt;100&amp;nbsp; &amp;nbsp;strWord() = Split(myRange, &amp;quot; &amp;quot;)&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;抽出した単語から検索用のフレーズを作る&lt;br /&gt;110&amp;nbsp; &amp;nbsp;phrase = strWord(0)&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;120&amp;nbsp; &amp;nbsp;For i = 1 To UBound(strWord)&lt;br /&gt;130&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; phrase = phrase &amp;amp; &amp;quot;+*+&amp;quot; &amp;amp; strWord(i)&lt;br /&gt;140&amp;nbsp; &amp;nbsp;Next&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;150&amp;nbsp; &amp;nbsp;URL = &amp;quot;&lt;a href=&quot;http://www.google.co.jp/search?q=%22&quot;&gt;http://www.google.co.jp/search?q=%22&lt;/a&gt;&amp;quot; &amp;amp; phrase &amp;amp; &amp;quot;%22&amp;amp;lr=&amp;quot;&lt;br /&gt;160&amp;nbsp; &amp;nbsp;ActiveDocument.FollowHyperlink address:=URL, AddHistory:=True&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;170&amp;nbsp; &amp;nbsp;Set myRange = Nothing&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;180&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;On Error GoTo 0&lt;br /&gt;190&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Exit Sub&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;vct_グーグル検索_ワイルドカード_Error:&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;200&amp;nbsp; &amp;nbsp;If Err = 9 Then&lt;br /&gt;210&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; phrase = vbNullString&lt;br /&gt;220&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End&lt;br /&gt;230&amp;nbsp; &amp;nbsp;Else&lt;br /&gt;240&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; MSGBOX &amp;quot;エラーが発生したため終了します。&amp;quot; &amp;amp; Err&lt;br /&gt;250&amp;nbsp; &amp;nbsp;End If&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;End Sub&lt;/p&gt;&lt;/blockquote&gt;&lt;p dir=&quot;ltr&quot;&gt;▼第２世代プログラム ２００９年６月２１日&lt;br /&gt;ポイント　Rangeオブジェクトを利用　考え方は、初代プログラムと同じ。&lt;br /&gt;Selectionオブジェクトにくらべ、プログラム自体の不要な行数が減った。&lt;br /&gt;また、検索ダイアログボックスを初期化する必要がなくなったので、&lt;br /&gt;初代プログラムにあった６７０行～８００行のコードが不要になった。&lt;br /&gt;４０行～７０行は、選択下文字列の最後が改行マーク（vbCr）の場合の処理。&lt;/p&gt;

&lt;p dir=&quot;ltr&quot;&gt;結果、８０行→４５行。&lt;/p&gt;&lt;blockquote dir=&quot;ltr&quot;&gt;&lt;p&gt;Sub 第２世代_グーグル検索_ワイルドカード()&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim phrase As String&amp;nbsp; &amp;nbsp; &#39;複数の単語の塊&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim URL As String&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;開きたいサイトのＵＲＬ&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim SS, SE As Long&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;選択した文字列のカーソル位置&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim myRange As Range&amp;nbsp; &amp;nbsp; &#39;レンジオブジェクト&lt;/p&gt;

&lt;p&gt;10&amp;nbsp; &amp;nbsp; SS = Selection.Start&lt;br /&gt;20&amp;nbsp; &amp;nbsp; SE = Selection.End&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;Rangeオブジェクトの設定&lt;br /&gt;30&amp;nbsp; &amp;nbsp; Set myRange = ActiveDocument.Range&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;選択範囲の最後が改行記号の場合の処理&lt;br /&gt;40&amp;nbsp; &amp;nbsp; myRange.SetRange Start:=SE - 1, End:=SE&lt;/p&gt;

&lt;p&gt;50&amp;nbsp; &amp;nbsp; If myRange = Chr(13) Then&lt;br /&gt;60&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; SE = SE - 1&lt;br /&gt;70&amp;nbsp; &amp;nbsp; End If&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;単語の検索（半角・全角スペース以外の文字列を検索します）&lt;br /&gt;80&amp;nbsp; &amp;nbsp; myRange.SetRange Start:=SS, End:=SS&lt;/p&gt;

&lt;p&gt;90&amp;nbsp; &amp;nbsp; With myRange.Find&lt;br /&gt;100&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; .Text = &amp;quot;([! 　]{1,})&amp;quot;&lt;br /&gt;110&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; .Forward = True&lt;br /&gt;120&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; .Wrap = wdFindStop&lt;br /&gt;130&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; .MatchByte = True&lt;br /&gt;140&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; .MatchWildcards = True&lt;br /&gt;150&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; .Execute&lt;br /&gt;160&amp;nbsp; &amp;nbsp;End With&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;スペースを選んだ場合はプログラム終了&lt;br /&gt;170&amp;nbsp; &amp;nbsp;If Not myRange.Find.Found Then&lt;br /&gt;180&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; MsgBox &amp;quot;スペースで区切られた複数の単語を選択してください。&amp;quot;&lt;br /&gt;190&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End&lt;br /&gt;200&amp;nbsp; &amp;nbsp;End If&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;選択範囲の先頭に単語が含まれない場合にはプログラム終了&lt;br /&gt;210&amp;nbsp; &amp;nbsp;If myRange.Start &amp;lt;&amp;gt; SS Then&lt;br /&gt;220&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; MsgBox &amp;quot;スペースで区切られた複数の単語を選択してください。&amp;quot;&lt;br /&gt;230&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End&lt;br /&gt;240&amp;nbsp; &amp;nbsp;End If&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;単語が見つかった場合には、見つかった単語を格納&lt;br /&gt;250&amp;nbsp; &amp;nbsp;If myRange.Find.Found = True Then phrase = myRange&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;二つめ以降の単語の検索&lt;/p&gt;

&lt;p&gt;260&amp;nbsp; &amp;nbsp;Do&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;次の単語の検索（半角、全角スペース以外の文字列を検索します）&lt;br /&gt;270&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; myRange.SetRange Start:=myRange.End, End:=myRange.End&lt;br /&gt;280&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; myRange.Find.Execute&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;290&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If myRange.Find.Found = False Then&lt;br /&gt;300&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; Exit Do&lt;br /&gt;310&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; Else&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &#39;末尾をそろえるための確認（日本語のとき役に立ちます）&lt;br /&gt;320&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; If myRange.End &amp;gt; SE Then&lt;br /&gt;330&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;myRange.End = SE&lt;br /&gt;340&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;350&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; If myRange.Start &amp;gt;= SE Then&lt;br /&gt;360&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Exit Do&lt;br /&gt;370&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; Else&lt;br /&gt;380&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;phrase = phrase &amp;amp; &amp;quot;+*+&amp;quot; &amp;amp; myRange&lt;br /&gt;390&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;myRange.Collapse direction:=wdCollapseEnd&lt;br /&gt;400&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; End If&lt;br /&gt;410&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End If&lt;/p&gt;

&lt;p&gt;420&amp;nbsp; &amp;nbsp;Loop&lt;/p&gt;

&lt;p&gt;430&amp;nbsp; &amp;nbsp;URL = &amp;quot;&lt;a href=&quot;http://www.google.co.jp/search?q=%22&quot;&gt;http://www.google.co.jp/search?q=%22&lt;/a&gt;&amp;quot; &amp;amp; phrase &amp;amp; &amp;quot;%22&amp;amp;lr=&amp;quot;&lt;br /&gt;440&amp;nbsp; &amp;nbsp;ActiveDocument.FollowHyperlink address:=URL, AddHistory:=True&lt;/p&gt;

&lt;p&gt;450&amp;nbsp; &amp;nbsp;Set myRange = Nothing&lt;/p&gt;

&lt;p&gt;End Sub&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;▼初代プログラム　２００８年８月３日&lt;br /&gt;ポイント　Selectionオブジェクトにて、全ての処理を実施。&lt;br /&gt;全角スペースまたは半角スペースで区切られた文字列を&lt;br /&gt;一つずつSelectionで探し出して、フレーズを作っています。&lt;/p&gt;&lt;blockquote dir=&quot;ltr&quot;&gt;&lt;p&gt;Sub 初代_グーグル検索_ワイルドカード()&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim word As String&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;選択された文字列内の単語ひとつずつ&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim Phrase As String&amp;nbsp; &amp;nbsp; &#39;複数の単語の塊&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim URL As String&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;開きたいサイトのＵＲＬ&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim SS, SE As Long&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;選択した文字列の最終カレット位置&lt;/p&gt;

&lt;p&gt;10&amp;nbsp; &amp;nbsp; SS = Selection.Start&lt;br /&gt;20&amp;nbsp; &amp;nbsp; SE = Selection.End&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;最初の単語の検索&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;単語の検索（半角・全角スペース以外の文字列を検索します）&lt;br /&gt;30&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; With Selection.Find&lt;br /&gt;40&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;.Text = &amp;quot;([! 　]{1,})&amp;quot;&lt;br /&gt;50&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;.Replacement.Text = &amp;quot;&amp;quot;&lt;br /&gt;60&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;.Forward = True&lt;br /&gt;70&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;.Wrap = wdFindStop&lt;br /&gt;80&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;.Format = True&lt;br /&gt;90&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;.MatchCase = False&lt;br /&gt;100&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchWholeWord = False&lt;br /&gt;110&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchByte = False&lt;br /&gt;120&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchAllWordForms = False&lt;br /&gt;130&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchSoundsLike = False&lt;br /&gt;140&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchFuzzy = False&lt;br /&gt;150&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchWildcards = True&lt;br /&gt;160&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End With&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;170&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; Selection.Find.Execute&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;スペースを選んだ場合はプログラム終了&lt;br /&gt;180&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If Not Selection.Find.Found Then&lt;br /&gt;190&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; MsgBox &amp;quot;スペースで区切られた複数の単語を選択してください。&amp;quot;&lt;br /&gt;200&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; End&lt;br /&gt;210&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End If&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;単語をひとつ選んだ場合にはプログラム終了&lt;br /&gt;220&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If Selection.Start &amp;lt;&amp;gt; SS Then&lt;br /&gt;230&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; Selection.Start = SS&lt;br /&gt;240&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; Selection.End = SE&lt;br /&gt;250&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; MsgBox &amp;quot;スペースで区切られた複数の単語を選択してください。&amp;quot;&lt;br /&gt;260&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; End&lt;br /&gt;270&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End If&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;280&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If Selection.Find.Found Then Phrase = Selection&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;二つめ以降の単語の検索&lt;/p&gt;

&lt;p&gt;290&amp;nbsp; &amp;nbsp;Do&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;単語の検索（半角、全角スペース以外の文字列を検索します）&lt;br /&gt;300&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; With Selection.Find&lt;br /&gt;310&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Text = &amp;quot;([! 　]{1,})&amp;quot;&lt;br /&gt;320&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Replacement.Text = &amp;quot;&amp;quot;&lt;br /&gt;330&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Forward = True&lt;br /&gt;340&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Wrap = wdFindStop&lt;br /&gt;350&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Format = True&lt;br /&gt;360&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchCase = False&lt;br /&gt;370&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchWholeWord = False&lt;br /&gt;380&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchByte = False&lt;br /&gt;390&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchAllWordForms = False&lt;br /&gt;400&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchSoundsLike = False&lt;br /&gt;410&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchFuzzy = False&lt;br /&gt;420&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchWildcards = True&lt;br /&gt;430&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End With&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;440&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; Selection.Find.Execute&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;450&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If Not Selection.Find.Found Then Exit Do&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;460&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If Selection.Find.Found Then&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;470&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; If Selection.End &amp;gt; SE Then&lt;br /&gt;480&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Selection.End = SE &#39;末尾をそろえるための確認（日本語のとき役に立ちます）&lt;br /&gt;490&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;500&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; If Selection.Start = Selection.End Then&lt;br /&gt;510&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Selection.Start = SS&lt;br /&gt;520&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Selection.End = SE&lt;br /&gt;530&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;MsgBox &amp;quot;スペースで区切られた複数の単語を選択してください。&amp;quot;&lt;br /&gt;540&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;End&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;550&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; Else&lt;br /&gt;560&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;word = Selection&lt;br /&gt;570&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Selection.Collapse direction:=wdCollapseEnd&lt;br /&gt;580&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Phrase = Phrase &amp;amp; &amp;quot;+*+&amp;quot; &amp;amp; word&lt;br /&gt;590&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Selection.Start = Selection.End&lt;br /&gt;600&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Selection.End = SE&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;610&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;620&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End If&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;630&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If Selection.Start = SE Then Exit Do&lt;/p&gt;

&lt;p&gt;640&amp;nbsp; &amp;nbsp;Loop&lt;/p&gt;

&lt;p&gt;650&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; URL = &amp;quot;&lt;a href=&quot;http://www.google.co.jp/search?q=%22&quot;&gt;http://www.google.co.jp/search?q=%22&lt;/a&gt;&amp;quot; &amp;amp; Phrase &amp;amp; &amp;quot;%22&amp;amp;lr=&amp;quot;&lt;br /&gt;660&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; ActiveDocument.FollowHyperlink address:=URL, NewWindow:=False, AddHistory:=True&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;検索窓をデフォルトの設定に変更&lt;br /&gt;670&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; With Selection.Find&lt;br /&gt;680&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Text = &amp;quot;&amp;quot;&lt;br /&gt;690&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Replacement.Text = &amp;quot;&amp;quot;&lt;br /&gt;700&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Forward = True&lt;br /&gt;710&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Wrap = wdFindStop&lt;br /&gt;720&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .Format = True&lt;br /&gt;730&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchCase = False&lt;br /&gt;740&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchWholeWord = False&lt;br /&gt;750&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchByte = False&lt;br /&gt;760&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchAllWordForms = False&lt;br /&gt;770&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchSoundsLike = False&lt;br /&gt;780&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchWildcards = False&lt;br /&gt;790&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; .MatchFuzzy = True&lt;br /&gt;800&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End With&lt;/p&gt;

&lt;p&gt;End Sub&lt;/p&gt;&lt;/blockquote&gt;</content:encoded>


<dc:subject>マクロプログラム</dc:subject>

<dc:creator>WordVBA</dc:creator>
<dc:date>2009-10-31T11:17:12+09:00</dc:date>
</item>
<item rdf:about="http://wordvba.cocolog-nifty.com/blog/2009/10/post-7a39.html">
<title>ユーザーフォームのテキストボックス内で改行文字列を取り出す（その３）</title>
<link>http://wordvba.cocolog-nifty.com/blog/2009/10/post-7a39.html</link>
<description>先日の「ユーザーフォームのテキストボックス内で 改行文字列を取り出す（その２）」...</description>
<content:encoded>&lt;p&gt;先日の「ユーザーフォームのテキストボックス内で&lt;br /&gt;改行文字列を取り出す（その２）」のつづきです。&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://wordvba.cocolog-nifty.com/blog/2009/10/post-7d52.html&quot;&gt;http://wordvba.cocolog-nifty.com/blog/2009/10/post-7d52.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;前回、テキストボックス内の文字列中の&lt;br /&gt;改行記号(vbCrLf)を★●★に置換してから&lt;br /&gt;.iniファイルに保存する方法を紹介しました。&lt;/p&gt;

&lt;p&gt;今回は、前回と逆の作業の紹介です。&lt;/p&gt;

&lt;p&gt;①.iniファイルに保存された文字列中の「★●★」を&lt;br /&gt;「改行記号(vbCrLf)」に置換&lt;/p&gt;

&lt;p&gt;②置換された文字列をテキストボックスに表示&lt;/p&gt;

&lt;p&gt;上記①と②を実行するマクロです。&lt;/p&gt;

&lt;p&gt;▼プログラム&lt;br /&gt;Sub GetTextData()&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;データ取得用プログラム&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim strWord() As String &#39;★●★で区切られた文字列&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim i As Integer&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim myData As String　&#39;.iniファイルから取得した文字列&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Dim myMessage As String　&#39;テキストボックスに表示用文字列&lt;/p&gt;

&lt;p&gt;10&amp;nbsp; &amp;nbsp; On Error GoTo Errorhandler&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;.iniファイル（ファイル名.ini)から保存済みの文字列を取得&lt;br /&gt;20&amp;nbsp; &amp;nbsp; myData = System.PrivateProfileString(&amp;quot;ファイル名.ini&amp;quot;, _&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;quot;textdata&amp;quot;, 1)&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;取得した文字列が空の場合、vbNullStringとする&lt;br /&gt;30&amp;nbsp; &amp;nbsp; If Len(myData) = 0 Then&lt;br /&gt;40&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; myMessage = vbNullString&lt;br /&gt;50&amp;nbsp; &amp;nbsp; Else&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&#39;取得した文字列が空ではない場合、★●★を改行記号(vbCrLf)に置換する&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;①★●★にて、取得した文字列を分解&lt;br /&gt;60&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; strWord() = Split(myData, &amp;quot;★●★&amp;quot;)&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;②分解した文字列の間に改行（vbCrLf）を挿入&lt;br /&gt;70&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; myMessage = strWord(0)&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;80&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; For i = 1 To UBound(strWord)&lt;br /&gt;90&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;myMessage = myMessage &amp;amp; vbCrLf &amp;amp; strWord(i)&lt;br /&gt;100&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; Next&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;110&amp;nbsp; &amp;nbsp;End If&lt;/p&gt;

&lt;p&gt;JN:&lt;/p&gt;

&lt;p&gt;120&amp;nbsp; &amp;nbsp;TextBox1.Value = myMessage&lt;br /&gt;130&amp;nbsp; &amp;nbsp;TextBox1.SetFocus&lt;/p&gt;

&lt;p&gt;140&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;On Error GoTo 0&lt;br /&gt;150&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;Exit Sub&lt;/p&gt;

&lt;p&gt;Errorhandler:&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &#39;取得した文字列に★●★がない場合&lt;br /&gt;160&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; If Err = 9 Then&lt;br /&gt;170&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; myMessage = myData&lt;br /&gt;180&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; GoTo JN&lt;br /&gt;190&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; Else&lt;br /&gt;200&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; MsgBox &amp;quot;エラーが発生しました。終了します。&amp;quot;&lt;br /&gt;210&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; End&lt;br /&gt;220&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; End If&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;br /&gt;End Sub&lt;/p&gt;

&lt;p&gt;▼プログラムの解説&lt;/p&gt;

&lt;p&gt;１０行、１６０行～２２０行&lt;br /&gt;エラー処理です。&lt;br /&gt;想定しているエラーは、取得した文字列に★●★が&lt;br /&gt;含まれない場合です。&lt;/p&gt;

&lt;p&gt;以前、このプログラムを作ったときには、このエラー処理は&lt;br /&gt;必要だと思ったのですが、今実行すると、その必要性が&lt;br /&gt;よくわかりません。。。&lt;/p&gt;

&lt;p&gt;ひとまず、書いておいて問題は無いと思うので、そのままに&lt;br /&gt;しました。いい加減で失礼します。&lt;/p&gt;

&lt;p&gt;１３０行　&lt;br /&gt;テキストボックスにフォーカス（カーソル）を移動&lt;/p&gt;

&lt;p&gt;次回は、このシリーズの最終回（その４）です。&lt;/p&gt;

&lt;p&gt;今までのプログラムをユーザーフォームに書き込んで&lt;br /&gt;一つのプログラムとして作動するものを紹介します。&lt;/p&gt;</content:encoded>


<dc:subject>マクロプログラム</dc:subject>

<dc:creator>WordVBA</dc:creator>
<dc:date>2009-10-25T12:09:13+09:00</dc:date>
</item>
<item rdf:about="http://wordvba.cocolog-nifty.com/blog/2009/10/post-8388.html">
<title>ベクターにテンプレート公開</title>
<link>http://wordvba.cocolog-nifty.com/blog/2009/10/post-8388.html</link>
<description>ようやく、Vector (ベクター)に登録が完了しました。 Vector（ベクタ...</description>
<content:encoded>&lt;p&gt;ようやく、&lt;a href=&quot;http://www.vector.co.jp/&quot;&gt;Vector (ベクター)&lt;/a&gt;に登録が完了しました。&lt;/p&gt;

&lt;p&gt;Vector（ベクター）とは、ソフト登録数国内最大規模の&lt;br /&gt;オンラインソフトウェア流通サイトです。&lt;/p&gt;

&lt;p&gt;充実したダウンロードライブラリがあり、パソコンの&lt;br /&gt;無料・有料ソフトが掲載されています。&lt;/p&gt;

&lt;p&gt;このベクターに、私のワードマクロを掲載させて&lt;br /&gt;いただくことになりました。&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.vector.co.jp/vpack/browse/person/an050963.html&quot;&gt;こちら&lt;/a&gt;をご覧ください。&lt;/p&gt;</content:encoded>


<dc:subject>【ベクターで公開中】</dc:subject>

<dc:creator>WordVBA</dc:creator>
<dc:date>2009-10-19T13:49:00+09:00</dc:date>
</item>
<item rdf:about="http://wordvba.cocolog-nifty.com/blog/2009/10/post-5426.html">
<title>「特許翻訳まなびの会」の河崎さんにお会いしました。</title>
<link>http://wordvba.cocolog-nifty.com/blog/2009/10/post-5426.html</link>
<description>以前から、このブログを紹介していただいている「特許翻訳まなびの会」の 管理者であ...</description>
<content:encoded>&lt;p&gt;以前から、このブログを紹介していただいている&lt;a href=&quot;http://pat-trans.com/&quot;&gt;「特許翻訳まなびの会」&lt;/a&gt;の&lt;br /&gt;管理者であり特許翻訳者である河崎有美さんに初めてお会いしました。&lt;/p&gt;

&lt;p&gt;私が河崎さんをたずねていったとか、仕事の都合で会ったとか&lt;br /&gt;そういう訳ではなく、特許翻訳とかマクロとかそういうものは全く&lt;br /&gt;関係のないイベントで偶然お会いしたのです。&lt;/p&gt;

&lt;p&gt;今日は、その偶然の出会いの紹介。&lt;/p&gt;

&lt;p&gt;昨日、大阪で行われた&lt;a href=&quot;http://www.project-r21.com/semicon.ohsaka10.html&quot;&gt;セミナーコンテスト&lt;/a&gt;（通称：セミコン）&lt;br /&gt;にオブザーバーとして参加してきました。&lt;/p&gt;

&lt;p&gt;私の&lt;a href=&quot;http://archive.mag2.com/0001007563/20091003185849000.html&quot;&gt;メルマガ&lt;/a&gt;では紹介してあったのですが、私は１１月７日に&lt;br /&gt;開催される&lt;a href=&quot;http://www.project-r21.com/semicon.nagoya.html&quot;&gt;名古屋のセミナーコンテスト&lt;/a&gt;に出場します。&lt;/p&gt;

&lt;p&gt;その下見や勉強もかねて、名古屋のセミナーコンテストに参加する&lt;br /&gt;仲間と大阪のセミナーコンテストを「体験」してきたわけです。&lt;/p&gt;

&lt;p&gt;で、今回の大阪セミコンに河崎さんが出場されていたんですね。&lt;/p&gt;

&lt;p&gt;偶然の出会いでした。&lt;/p&gt;

&lt;p&gt;河崎さんが発表されたセミナーの内容は、特許翻訳に関するもの&lt;br /&gt;ではありません。&lt;/p&gt;

&lt;p&gt;「本当の笑顔の取りもどす方法」とのことで、オリジナリティ&lt;br /&gt;あふれる体験・ノウハウや、リラックスした話し方に引き込まれました。&lt;/p&gt;

&lt;p&gt;セミコンでは、その出場者のひととなりがすごく発表内容に&lt;br /&gt;あらわれるので、その点で非常に楽しめます。&lt;/p&gt;

&lt;p&gt;出場者の７名の方々の本気度合いもビリビリ感じて、胸が熱くなる&lt;br /&gt;瞬間が何度もありました。&lt;/p&gt;

&lt;p&gt;自分の発表はまだ内容が確定していませんが、この大阪セミコンの&lt;br /&gt;学びをいかして、等身大の自分を表現できる話をしたいと思いました。&lt;/p&gt;

&lt;p&gt;ところで。。。&lt;/p&gt;

&lt;p&gt;特許用のワードマクロの話で盛り上がれる人はほとんどいないので、&lt;br /&gt;私のマクロに興味を示していただいている河崎さんにお会いできて&lt;br /&gt;うれしかったです。&lt;/p&gt;

&lt;p&gt;河崎さんはきさくな方で、いろんなお話をさせていただきました。&lt;/p&gt;

&lt;p&gt;懇親会に向かう道、また懇親会で、特にワードマクロの話ばかりさせて&lt;br /&gt;いただきました。少しうっとおしく感じられたかも。。。&lt;/p&gt;

&lt;p&gt;「思いがけない出会い」のおまけつきのセミコン視察となりました。&lt;/p&gt;

&lt;p&gt;河崎さん、ありがとうございました。&lt;/p&gt;</content:encoded>


<dc:subject>日記・コラム・つぶやき</dc:subject>

<dc:creator>WordVBA</dc:creator>
<dc:date>2009-10-18T14:56:15+09:00</dc:date>
</item>


</rdf:RDF>
