- ベストアンサー
ある列に数字を右より、文字を中央よりで入力したい
ある列に数字を右詰に日本語句を中央よりに入力したいんですが、そういうときはどう設定すればいいんでしょうか?エクセル2000です。よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
マクロ処理になると思います。 下記をコピーしてから、シートタブの右クリックメニューの"コードの表示"を選択 して開く画面に貼り付けてください。 "中央より"を中央揃えとして解釈し、"ある列"をB列と仮定しています。 ' Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column <> 2 Then Exit Sub 'B列以外は対象外 Select Case WorksheetFunction.IsNumber(Target.Value) Case Is = True Target.HorizontalAlignment = xlGeneral '書式=標準 Case Else Target.HorizontalAlignment = xlCenter '書式=中央揃え End Select End Sub
その他の回答 (1)
- misatoanna
- ベストアンサー率58% (528/896)
> If Target.Column <> 2 Then Exit Sub 'B列以外は対象外 アポストロフィ ' は、「この位置から右はコメントなので無視」という記号です ので、ここを変更しても無視されます。 Target.Column <> 2 の 2 がB列の列番号を意味していますので、ここを 5 に するとE列になります。 I列とL列が対象なのでしたら、この行を If Target.Column <> 9 And Target.Column <> 12 Then Exit Sub に書き換えます。 もっと多くの列を対象にする場合は 同じように And でつなげていってもよいですが、 次のように置き換える方法もあります。 Select Case Target.Column Case Is = 1, 5, 7, 9, 12, 16 GoTo Pfm Case Else Exit Sub End Select Pfm:
お礼
なんとかできました^^v♪ ありがとうございました。 マクロって面白いですね。頭禿げそうだけど…
お礼
ありがとうございます。 これが噂のマクロですか^^;難しそうですね… 早速コピーしてやってみました。 B列は希望どおりになりました。 でも、私の希望はL列とI列なんです。 試しに「B列以外は対象外」のBのところをEに変えたら、さっきまではうまくできたのに、E列に変化がおきません。(大文字の全角で打ちました) 他にもB→Eに変更すべきところがありますか? また、L列も同じように変えたいときはどうすればいいんでしょうか?