スライドは100枚以上あります。それぞれのページに日本語の文字列がかなりの量かかれています。
質問ですが、今、以下のことをやりたいのですが、簡単に一発でできる方法はないでしょうか?
・算用数字で全角のものは全て半角に変換
・アルファベットで全角のものは全て半角に変換
・カタカナで半角のものは全て全角に変換
「置換」で1文字1文字やるのは大変です。
他の方法でよいものがあれば教えてください。
どうぞよろしくお願い致します。
http://www.hondarer-soft.com/cx/pukiwiki/pukiwiki.php?Memo%2...
[hondarer-soft] to [cx20.main.jp]
VBA で変換用のプログラムを作成するのが一番手軽な方法だと思います。
試しにコードを書いてみました。
URL にコードを添付してありますのでご利用ください。
↓ 下記のコードは、投稿時に、一部記号が全角に変換されている可能性があります。
’ <使い方>
’ 1. Power Point の「Visual Basic Editor」を起動します。
’ 2. [挿入] - [標準モジュール] を選択します。
’ 3. 下記のコードを貼り付けます
’ 4. [実行] - [Sub/ユーザー フォームの実行] で
’ ChangeKanaText() プロシージャを実行します。
’ → スライド上の文字列を一括置換します。
Option Explicit
Function IsKatakana(strTarget As String) As Boolean
Dim strPattern
strPattern = ”[ア-ンア-ン]” ’ カタカナ範囲チェック用
Dim reg As Object
Set reg = CreateObject(”VBScript.RegExp”) ’ 正規表現コンポーネントを利用
reg.Pattern = strPattern
IsKatakana = reg.Test(strTarget)
Set reg = Nothing
End Function
Sub ChangeKanaText()
’ スライドを取得
Dim slide
For Each slide In ActiveWindow.Parent.Slides
’ スライド内のシェイプオブジェクト(テキストボックス等)を取得
Dim shape
For Each shape In slide.Shapes
’ シェイプ(テキストボックス等)の単語を取得
Dim word
For Each word In shape.TextFrame.TextRange.Words
’ 文字列の置換
If IsKatakana(word.Text) = True Then
’ カタカナの場合は全角に変換
word.Text = StrConv(word.Text, vbWide)
Else
’ それ以外は半角に変換
word.Text = StrConv(word.Text, vbNarrow)
End If
Next
Next
Next
End Sub
URL は参考情報です。
正規表現コンポーネント(VBScript.RegExp)の説明が載っています。
http://www.hondarer-soft.com/cx/pukiwiki/pukiwiki.php?Memo%2...
[hondarer-soft] to [cx20.main.jp]
URL は参考情報です。
StrConv() 関数の使用例が載っています。
http://www.hatena.ne.jp/1104101386
人力検索はてな - 今、MS-PowerPoint2003のファイルが1つあります。 スライドは100枚以上あります。それぞれのページに日本語の文字列がかなりの量かかれています。 質問ですが、今、以下の..
「置換」しか思いつきません。
よってポイントはいりません。
で、「一発で」ってことになってくると
自分の会社の自分より立場の低い奴の肩を「ヨロシク!」ポン、っと一発叩きましょう。
マクドナルドの店員も裸足で逃げ出すくらいの最ッ高のスマイルでどうぞ。
この作業は私の職場では頻繁に発生するため、前の方の回答のように何度も使用できるような方法が望ましいです。実はVBAしかないだろうという予想はしていましたが、私はVBAの知識が皆無の人なので・・・。
http://cubic9.com/test/hatena/pp_regular/
はてな 1104101386 PowerPointで表記を正規化したい
私も作ってみました。以下の手順で処理します。
1.URLからregular.basをダウンロードする。
2.ツール>マクロ>Visual Basic Editorを選択し、Visual Basic Editorを起動。
3.ファイル>ファイルのインポートを選択し、ダウンロードしたファイルを読み込む。
4.ツール>マクロ>マクロを選択し、Regularizationを実行。
ありがとうございました!!!
一応最初の方のVBAで解決できました。本当に本当にありがとうございました!!
これからも愛用していきます!!
ありがとう!!
すごいです。
質問ですが、VBAの記述の中で修正しなければならない(はてなの投稿で全角になってしまった部分)
は、[ア-ンア-ン]のところでしょうか?どこを半角に修正すればよいでしょうか?
実行してみましたが、
For Each word In shape.TextFrame.TextRange.Words
のところでひっかかりました。
『TextFrame.TextRange:無効な要求です。この種類の図形にテキスト枠は設定できません。』
というメッセージです。