Word または Excel の表内の文字の配置

Word または Excel の表内の文字の配置

次のようなハイフンで区切られたデータがあります。

    A
1| 2-8
2| 0-12345
3| 15-123
4| and so on 

ハイフンが中央になるように Word または Excel の内容を揃えるにはどうすればよいですか?

答え1

Excel 向けソリューション

テキストを中央揃えにすることを話していると仮定すると、単一列(行ではありません)

VBAを使用すると、1回のクリックで3つのステップを実行できます

  1. セルを固定幅のフォントに設定します。コンソラス
  2. セルを中央に配置する
  3. ハイフンが中央に来るまで文字列の先頭または末尾にスペースを追加します
Sub CenterHyphenatedContent()
    For Each cell In UsedRange
        If InStr(cell.Value, "-") > 0 Then
                                    
            cell.Font.Name = "Consolas"
            cell.HorizontalAlignment = xlCenter
            
            intLenLeft = InStrRev(cell.Value, "-") - 1
            intLenRight = Len(cell) - InStr(cell.Value, "-")
            intDiff = Abs(intLenLeft - intLenRight)
            
            If intLenLeft > intLenRight Then cell.Value = cell.Value & Space(intDiff)
            If intLenLeft < intLenRight Then cell.Value = Space(intDiff) & cell.Value

        End If
    Next
End Sub

ビフォアーアフター

ここに画像の説明を入力してくださいここに画像の説明を入力してください

注意: このコードは余分なスペースを追加するため、Excelデータを変更します。

答え2

Word では、タブを使用して同様のことを実現しました。たとえば、乗算記号で一連の行を揃えたいと考えました。これを実現するために、2 cm の位置に右揃えのタブ、2.25 cm の位置に中央揃えのタブ、2.5 cm の位置に左揃えのタブを配置しました。すると、各行のテキストは次のようになりました。

タブ「最初のテキスト」タブ×タブ「2番目のテキスト」

文字に合わせて配置された Word テキストの例

答え3

列 B と列 C に数式を入力して、列 A の値をハイフンの左側と右側に分割することができます。たとえば、例を使用して、left()B1 に「2」を入力し、right()C1 に「-32」を入力します。次に、列 B を右揃えにし、列 C を左揃えにして、列 A を非表示にします。

関連情報