• ベストアンサー

PowerPointの表内のカンマ

PowerPoint2002で表を挿入した後に、表に数字のデータを入れました。 例えば「20,000」というように「,」カンマを入れたいのですが、エクセルみたいにボタンひとつで表内のセルのデータすべてにカンマがつくような設定はないでしょうか? やっぱり数字を入れるたびに、「,」を入れないと無理でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.2

こんにちは。KenKen_SP です。 #1 の方のコメントのとおり、Power Point (以下 PP ) には数字を桁区切り にする機能はありません。 Excel で表を作って貼り付ければ良いような気がしますが、既存のデータには 対応しきれない事もあるかと思います。 そこで、マクロを書いてみました。 選択したスライド内の全ての数値を桁区切りに書式設定します。やり方がわから ない場合は、その旨書き込んで下さい。 Sub 選択ページ内の数字の桁区切り()      Dim Sld  As Slide   Dim Shp  As Shape   Dim iShp As Shape   For Each Sld In ActiveWindow.Selection.SlideRange     For Each Shp In Sld.Shapes       If Shp.Name Like "Group*" Then         '表ならセルの数だけループ         For Each iShp In Shp.GroupItems           Call myNumberFormat(iShp)         Next iShp       Else         Call myNumberFormat(Shp)       End If     Next Shp   Next Sld End Sub Private Sub myNumberFormat(TargetShp As Shape)      Dim RegEx  As Object   Dim Matches As Variant   Dim Match  As Variant   Dim strNum As String      If Not TargetShp.HasTextFrame Then Exit Sub      'マッチングパターン定義   Set RegEx = CreateObject("VBScript.RegExp")   With RegEx     .Pattern = "[0-90-9]{4,}"     .Global = True   End With      '検索して置換   If TargetShp.TextFrame.HasText Then     With TargetShp.TextFrame.TextRange       Set Matches = RegEx.Execute(.Text)       For Each Match In Matches         '文字列の数値を書式設定 #、##0         strNum = Replace$(.Text, Match, Format$(Match, "#,##0"))         If StrComp(.Text, StrConv(.Text, vbWide), vbBinaryCompare) = 0 Then           '全角の場合           .Text = Replace$(StrConv(strNum, vbWide), ",", ",")         Else           '半角の場合           .Text = strNum         End If       Next Match     End With   End If      Set Matches = Nothing   Set RegEx = Nothing    End Sub

yukihuri
質問者

お礼

詳しい説明をありがとうございました。一度試してみます。

その他の回答 (1)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

PowerPointの表にそのような機能は無かったと思います。 面倒ならExcelのシートを貼り付ければ良いのでは?

yukihuri
質問者

お礼

ありがとうございました。

関連するQ&A