No.2ベストアンサー
- 回答日時:
テキストボックス限定であればVBAで可能です。
しかしパワーポイントに張り付いているExcelの表やグラフなども対象となると難しいですね。
以下のコードは同一フォルダにあるすべてのパワーポイントで、テキストボックスだけを対照に、すべての文字を全角に変換して保存するものです。
新規パワーポイントで[Alt]+[F11]または[ツール]-[マクロ]-[Visual Basic Editor]を押してVBEを起動。
[挿入]-[標準モジュール]で標準モジュールに以下のコードを書く。
保存して終了。
これをクライアントから届いたパワーポイントのファイルが置いてあるフォルダに移動して開く。
[Alt]+[F8]または[ツール]-[マクロ]-[マクロ]でマクロ実行のダイアログを表示させ、[ConvertToWide]を実行。
同じフォルダにあるパワーポイントを次々に開いてテキストボックス内の文字を変換し、保存終了を繰り返してくれます。
Sub ConvartToWide()
Dim myPath As String
Dim PPTName As String
Dim ThisPresentation As Presentation
Dim CurrentPPT As Presentation
Dim CurrentSlide As Slide
Dim CurrentShape As Shape
Set ThisPresentation = ActivePresentation
myPath = ActivePresentation.Path
If Right$(myPath, 1) <> "\" Then
myPath = myPath & "\"
End If
' フォルダ内のすべてのPPTファイルをループ
PPTName = Dir(myPath & "*.ppt")
Do Until PPTName = ""
If PPTName <> ThisPresentation.Name Then
Set CurrentPPT = .Presentations.Open(myPath & PPTName)
For Each CurrentSlide In CurrentPPT.Slides
For Each CurrentShape In CurrentSlide.Shapes
With CurrentShape
If .Type = msoTextBox Then
.TextFrame.TextRange.Text = StrConv(.TextFrame.TextRange, vbWide)
End If
End With
Next CurrentShape
Set CurrentShape = Nothing
Next CurrentSlide
Set CurrentSlide = Nothing
CurrentPPT.Save
CurrentPPT.Close
Set CurrentPPT = Nothing
End If
PPTName = Dir()
Loop
Set ThisPresentation = Nothing
End Sub
本当にありがとうございます、一部変更したり手を加えたりして、求めていた物を作成する事が出来ました、上記を応用して、エクセルバージョン、ワードバージョンも作りました。これで手間のかかる作業が一度で終わります。
No.1
- 回答日時:
全角の数字を半角の数字にするだけでしたら、置換を行えば良いと思います。
[編集]→[置換]で
検索する文字列に
0
置換後の文字列に
0
で
半角と全角を区別する
だけをチェックして、[すべて置換]ボタンを押します。
この作業を0、1、2、・・・9と行うだけです。
これであれば、ワード、エクセル、パワーポイントどれでも同じです。
ご確認下さい。
この回答への補足
依頼されるファイルが1枚ぐらいだったら上記の方法でもいいと思いますが、毎日50ページ100ページと大量です、アプリケーションまさまざまです、手のかかる作業をプログラミングしたいのです、その方法でなにかいい方法をしりたいのですが。。。
補足日時:2003/05/07 12:03お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/15 16:33
- Excel(エクセル) 【マクロ】フォルダを3つ、POモニター上に、決まった並べ方をしたい 4 2022/08/31 11:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/10 09:06
- Excel(エクセル) 【マクロ】フォルダを2つのモニターの定位置に並べたい 2 2022/09/02 01:14
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルのオートフィルターのしぼりをクリアーしたい 2 2022/12/24 08:36
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数のデータ系列の線の太さを...
-
cellsで特定の離れた範囲を選択...
-
エクセルでツールバーに「縮小...
-
エクセルシートをまとめて印刷...
-
エクセル2007 テキストボ...
-
Powerpointでランダムな数字の...
-
VBAをVBに変換する方法
-
エクセルのマクロでSelection.S...
-
ファイル名を今日の日付、時刻...
-
wordのマクロで縮小して貼り付...
-
エクセル vba クリック~離し...
-
VBAを使ってエクセルシート...
-
エクセルワークシート上に印刷...
-
ピボットグラフの書式の固定に...
-
VBA[Private Sub]のコードをシ...
-
エクセルVBAで、画像の倍率を知...
-
VBAでグラフXj軸の文字列を左90...
-
VBAでシートの保護をかける際に...
-
VBAに詳しい方教えてください。
-
Excelの中でオートシェイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
複数のデータ系列の線の太さを...
-
エクセルでツールバーに「縮小...
-
ファイル名を今日の日付、時刻...
-
cellsで特定の離れた範囲を選択...
-
Powerpointでランダムな数字の...
-
VBAに詳しい方教えてください。
-
VBA[Private Sub]のコードをシ...
-
VBAを使ってエクセルシート...
-
【ExcelVBA】クエリの更新とピ...
-
別ブックからユーザーフォーム...
-
ピボットグラフの書式の固定に...
-
Pictures.Insertメソッド⇒Shape...
-
エクセルシートをまとめて印刷...
-
どのドキュメントは暗号化され...
-
最初の1回のみにボタンクリッ...
-
エクセルワークシート上に印刷...
-
エクセル2007 テキストボ...
-
エクセルのマクロでSelection.S...
-
エクセルVBAで、画像の倍率を知...
-
VBAで棒グラフの色を変えたい
おすすめ情報