Word VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


45 / 45 ページ ←次へ

【14】Re:半角全角変換をするには?
お礼  ハンサムなオレ  - 03/1/28(火) 9:19 -

引用なし
パスワード
   ▼H.C.Shinopy さん:
ご丁寧にありがとうございました(*゚ー゚*)
早速自作ツールに組み込ませて頂きます。
・ツリー全体表示

【13】Re:半角全角変換をするには?
回答  H.C.Shinopy  - 03/1/28(火) 2:14 -

引用なし
パスワード
   これも「Word2002 300の技」に検索のヒントだけが載っていたのですが、
私流に考えて、以下のようなマクロになりました。
全角カタカナの後に続く「・」「ー」(中点・長音符)を半角に変換する処理と、
Officeアシスタントによる「OK・キャンセル」ボタン処理を付け足しました。
(但し、このボタン処理は「KatakanaHalfWidth」を実行した場合。
御不要な場合は「KatakanaHalfWidthExec」のみ実行して下さい。)
尚、「‐」「ヽ」「ヾ」(ハイフン・カタカナ繰り返し記号)は、
該当する半角文字がないため変換しません。

Sub KatakanaHalfWidth()
' 全角カタカナを半角に変換一括変換
' 記録日 2003/01/27 記録者 Shinopy
 Dim bBeforeRunVisible As Boolean
 Dim iLabelValue As Integer
'
 bBeforeRunVisible = Assistant.Visible
'
 With Assistant
  .Visible = True
 End With
'
 With Assistant.NewBalloon
  .Animation = msoAnimationWritingNotingSomething
  .BalloonType = msoBalloonTypeButtons
  .Icon = msoIconAlertQuery
  .Button = msoButtonSetOkCancel
  .Heading = vbCr + "全角カタカナを半角に" + vbCr + "一括変換"
  .Text = "ボタンを選択して下さい。"
  iLabelValue = .Show
 End With
'
 Select Case iLabelValue
  Case -1 ' [OK]ボタン時
   Call KatakanaHalfWidthExec
  Case -2 ' [キャンセル]ボタン時
   With Assistant
    .Animation = msoAnimationIdle
   End With
 End Select
'
 With Assistant.NewBalloon
  If iLabelValue = -2 Then
   .Text = "処理が取り消されました。"
   .Animation = msoAnimationGetAttentionMajor
   .Icon = msoIconAlert
  Else
   .Text = "処理が終了しました。"
   .Animation = msoAnimationCharacterSuccessMajor
   .Icon = msoIconAlertInfo
  End If
  .BalloonType = msoBalloonTypeButtons
  .Button = msoButtonSetOK
  .Heading = vbCr + "全角カタカナを半角に" + vbCr + "一括変換"
  .Show
 End With
 Assistant.NewBalloon.Close
 Assistant.Visible = bBeforeRunVisible
End Sub ' KatakanaHalfWidth  *----*----*
Sub KatakanaHalfWidthExec()
' 記録日 2003/01/27 記録者 Shinopy
' 「‐」「ヽ」「ヾ」(連字符・繰り返し記号)は、変換しません。
 Dim cKatakana As String
 cKatakana = "[ァ-" & ChrW(Val("&h30FA")) & "]" ' &h30FA : 「ヲ゛」
' *----*
' 全角カタカナの後に続く中点・長音符を半角に変換
 Selection.Words(1).Select
 Selection.Collapse wdCollapseStart
'
 With Selection.Find
  .ClearFormatting
  .Text = cKatakana & "{1,}" & "([・ー]{1,})"
  .Replacement.Text = ""
  .Forward = True
  .Wrap = wdFindContinue
  .Format = False
  .MatchCase = False
  .MatchWholeWord = False
  .MatchByte = False
  .MatchAllWordForms = False
  .MatchSoundsLike = False
  .MatchFuzzy = False
  .MatchWildcards = True
 End With
'
 Do While Selection.Find.Execute
  With Selection.Range
   .CharacterWidth = wdWidthHalfWidth
  End With
  Selection.Collapse wdCollapseEnd
 Loop
' *----*
' 全角カタカナを半角に変換
 Selection.Words(1).Select
 Selection.Collapse wdCollapseStart
'
 With Selection.Find
  .ClearFormatting
  .Text = cKatakana & "{1,}"
  .Replacement.Text = ""
  .Forward = True
  .Wrap = wdFindContinue
  .Format = False
  .MatchCase = False
  .MatchWholeWord = False
  .MatchByte = False
  .MatchAllWordForms = False
  .MatchSoundsLike = False
  .MatchFuzzy = False
  .MatchWildcards = True
 End With
'
 Do While Selection.Find.Execute
  With Selection.Range
   .CharacterWidth = wdWidthHalfWidth
  End With
  Selection.Collapse wdCollapseEnd
 Loop
End Sub ' KatakanaHalfWidthExec  *----*----*
・ツリー全体表示

【12】Re:半角全角変換をするには?
質問  ハンサムなオレ  - 03/1/27(月) 14:40 -

引用なし
パスワード
   便乗質問でスミマセン。
全角カタカナから半角カタカナに変換する方法も教えて下さい。
・ツリー全体表示

【11】Re:半角全角変換をするには?
回答  H.C.Shinopy  - 03/1/22(水) 19:44 -

引用なし
パスワード
   技術評論社の書籍「Word2002 300の技」に
112番目の技として以下のようなマクロが載っています。
(1箇所だけ、私が手を加えて変更しています。
「Selection.Font.Scaling = 50」で文字幅を50%に指定し、
半角文字と同じ幅になるようにしています。
御不要な場合は、この行を削除して下さい。)

尚、文字列変換の対象は「本文」です。
「オブジェクト」のほうは、どうにも判りません。
お許し下さい。

Sub 半角カタカナ全角変換()
 Selection.Words(1).Select
 Selection.Collapse wdCollapseStart
'
 Selection.Find.ClearFormatting
 With Selection.Find
  .Text = "[ヲ-゚]{1,}"
  .Replacement.Text = ""
  .Forward = True
  .Wrap = wdFindContinue
  .Format = False
  .MatchCase = False
  .MatchWholeWord = False
  .MatchByte = False
  .MatchAllWordForms = False
  .MatchSoundsLike = False
  .MatchFuzzy = False
  .MatchWildcards = True
 End With
'
 Do While Selection.Find.Execute
  With Selection.Range
   .CharacterWidth = wdWidthFullWidth
   Selection.Font.Scaling = 50
  End With
  Selection.Collapse wdCollapseEnd
 Loop
End Sub ' 半角カタカナ全角変換  *----*----*
・ツリー全体表示

【10】半角全角変換をするには?
質問  YYS  - 02/12/26(木) 17:39 -

引用なし
パスワード
   はじめて質問致します。
word文章に半角カナ文字が入っていたとします。
これを全て全角に変換する方法があれば教えてください。
なお、対象は「本文」「オブジェクト(可能であれば)」
です。
よろしくお願いします。
・ツリー全体表示

【9】WORDマクロの解説本について教えてください
質問  FIN  - 02/11/13(水) 16:57 -

引用なし
パスワード
   WORD2000や2002に対応したWORDマクロのお勧め解説本って何か
ありますか?
・ツリー全体表示

【8】Re:チェックの仕方について
回答  yu-ji  - 02/10/7(月) 9:37 -

引用なし
パスワード
   ▼ためやん さん:
>□内にレ点を挿入したいのですが方法がわかりません。
>どなたか教えていただけたら幸いです。
>宜しくお願いします。

□というのは、チェックボックスでいいんでしょうか?
#文字の□じゃないですよね?

普通に、

If CheckBox1.Value = True Then
 CheckBox1.Value = False
Else
 CheckBox1.Value = True
End If

という感じで使えます。
・ツリー全体表示

【7】チェックの仕方について
質問  ためやん  - 02/10/1(火) 10:26 -

引用なし
パスワード
   □内にレ点を挿入したいのですが方法がわかりません。
どなたか教えていただけたら幸いです。
宜しくお願いします。
・ツリー全体表示

【6】Re:2002で差込印刷
発言  Rinko  - 02/9/10(火) 22:27 -

引用なし
パスワード
   自己レスです。解決しました。
自動記録をあきらめ、マイクロソフトのサポート記事などを参考に
してなんとか2002での差込印刷を自動化できました。
ありがとうございました。
・ツリー全体表示

【5】2002で差込印刷
質問  Rinko  - 02/9/9(月) 23:27 -

引用なし
パスワード
   はじめまして。はじめて過去の質問箱からお邪魔しました。
エクセルの住所録を差し込んで宛名ラベルを作成するマクロを自動記録
したのですが、実行できません。
XP、2002で差込印刷ウィザードを印刷終了までしました。
マクロでお使いの方がいらっしゃいましたら、教えてください!
2000ではできたんですが。。

←のところで実行時エラー509 このコマンドは使用できません。
となります。1件目に入っているだけでした。どう修正したらいいのでしょうか。
印刷終了まで記録しています。差し込んだラベルがレイアウトされれば、あとは
手動で印刷してもいいのですが、エラーまでではそれができていません。
ちなみにこの1行を消したところ、1件づつラベルシートの1件目を使って印刷され、連続では差し込まれていませんでした。

〜省略
Selection.TypeText Text:=" 〒"
  ActiveDocument.Fields.Add Range:=Selection.Range, Type:=wdFieldMergeField _
    , Text:="""郵便番号"""
  Selection.TypeParagraph
  Selection.TypeText Text:=" "
  ActiveDocument.Fields.Add Range:=Selection.Range, Type:=wdFieldMergeField _
    , Text:="""住所1"""
  Selection.TypeParagraph
  Selection.TypeText Text:=" "
  ActiveDocument.Fields.Add Range:=Selection.Range, Type:=wdFieldMergeField _
    , Text:="""住所2"""
  Selection.TypeParagraph
  Selection.MoveDown Unit:=wdLine, Count:=1
  Selection.TypeText Text:="   "
  ActiveDocument.Fields.Add Range:=Selection.Range, Type:=wdFieldMergeField _
    , Text:="""氏名"""
  Selection.TypeText Text:="  様"
  WordBasic.MailMergePropagateLabel ←ここで実行時エラー509 
  With ActiveDocument.MailMerge
    .Destination = wdSendToPrinter
    .SuppressBlankLines = True
    With .DataSource
      .FirstRecord = wdDefaultFirstRecord
      .LastRecord = wdDefaultLastRecord
    End With
    .Execute Pause:=False
  End With
  CommandBars("Task Pane").Visible = False
End Sub
・ツリー全体表示

【4】Re:実験
質問  じっけん E-MAILWEB  - 02/8/26(月) 0:27 -

引用なし
パスワード
   さらにじっけん。
▼じっけん さん:
>▼谷 誠之 さん:
>>これは実験用の書き込みです。
・ツリー全体表示

【3】Re:実験
回答  じっけん E-MAILWEB  - 02/8/26(月) 0:26 -

引用なし
パスワード
   ▼谷 誠之 さん:
>これは実験用の書き込みです。
・ツリー全体表示

【2】実験
発言  谷 誠之 E-MAILWEB  - 02/8/25(日) 3:37 -

引用なし
パスワード
   これは実験用の書き込みです。
・ツリー全体表示

【1】Word VBA 質問箱 新装開店
 谷 誠之 E-MAILWEB  - 02/8/19(月) 16:16 -

引用なし
パスワード
   VBA研究所の主宰者、谷です。

おかげさまで、VBA質問箱も第4弾。
今後とも、どうぞよろしくお願いいたします。
・ツリー全体表示

45 / 45 ページ ←次へ
ページ:  ┃  記事番号:
207512
(SS)C-BOARD v3.8 is Free