Excelノート 6-1 書式

HOME  検索  索引  もくじ  関数目次ージへ        次ページへ

タイトル欄のアドレスは、エクセルファンクラブの該当する頁へのリンク先です。
詳しい事は、こちらの
お願いをご覧になってください。

1  立法メ−トルを記号で表示したい
2  上付き下付きを簡単に設定するには?
3  「折り返して全体を表示する」書式設定をするには?
4  矢印を斜めにするには?
5  金額表示の後ろにハイフンをつけるには?
6  セルの値に、いろいろな単位記号を付ける
7  セルの書式設定
8  セルの書式、ユーザー定義の表示形式
9  セルの書式、日付の表示形式で使う書式記号
10 セルの書式、時刻の表示形式で使う書式記号 その1
11 セルの書式、時刻の表示形式で使う書式記号 その2
12 セルの書式、色の表示形式で使う書式記号
13 行の書式を記憶させておくには?(アクティブなセルの行だけ塗りつぶす)
14 マクロで条件付書式(数式)を設定するには?

1 立法メ−トルを記号で表示したい
http://www.keep-on.com/~excelyou/2000lng1/200006/00060121.txt
 「単位記号で立方メ−トルはどこに?」 【編集】
Excel97、Excel2000 共通
セルにm3と入力し、3だけ選択して右クリック
「セルの書式設定」で「文字飾り」の「上付き」をチェック
Sub macro_m3()
 On Error Resume Next
 activecell.FormulaR1C1 = activecell.FormulaR1C1 + "m3"
 With activecell.Characters(Start:=Len(activecell.FormulaR1C1), Length:=1).Font
  .Superscript = True
 End With
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
2 上付き下付きを簡単に設定するには?
Excel97、Excel2000 共通
対象のセルを選択して、テキストエリアで下付きにしたい文字を選び、
右クリックしてセルの書式設定から下付きにチェックを入れてOKを押します
Sub 上付き文字()
 Dim i As Integer, j As Integer
 i = Len(ActiveCell.Value)
 j = Application.InputBox(Prompt:="何文字目を上付き文字にしますか?", Default:=i, Type:=1)
 If j = False Then Exit Sub
 With ActiveCell.Characters(Start:=j, Length:=1).Font
  .Superscript = True    
'上付き文字
  ' .Subscript = True   
 ’下付き文字の場合はこっちのコード
 End With
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
Sub 下付()
 
'選択されたセルのフォントを下付きにします
 With Selection.Font
  .Superscript = False
  .Subscript = True
 End With
End Sub
Sub 上付()
 '選択されたセルのフォントを上付きにします
 With Selection.Font
  .Superscript = True
.  Subscript = False
 End With
End Sub
Sub 上付下付解除()
 
'選択されたセルの上付きおよび下付きを解除します
 With Selection.Font
  .Superscript = False
  .Subscript = False
 End With
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
3 「折り返して全体を表示する」書式設定をするには?
Excel97、Excel2000 共通
書式、セル、配置で、折り返して全体を表示するにチェックを入れる。
Sub test()
 Selection.WrapText = True
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
4 矢印を斜めにするには?
Excel97、Excel2000 共通
セルの中の「↓」を選択し、右クリックメニューから[セルの書式設定(F)]−[スタイル(O)]で[斜体]。
5 金額表示の後ろにハイフンをつけるには?
Excel97、Excel2000 共通
「セルの書式設定」→「表示形式」→「ユーザー定義」で種類の所に
\#,##0-;\-#,##0-   と設定する。
6 セルの値に、いろいろな単位記号を付ける
http://www.keep-on.com/~excelyou/2000lng1/200006/00060121.txt
 「単位記号で立方メ−トルはどこに?」 【編集】
Sub macro_cm3()
 On Error Resume Next
 ActiveCell.FormulaR1C1 = ActiveCell.FormulaR1C1 + "cm3"
 With ActiveCell.Characters(Start:=Len(ActiveCell.FormulaR1C1), Length:=1).Font
  .Superscript = True               
'上付きにする
 End With
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
Sub macro_m3()
 On Error Resume Next
 ActiveCell.FormulaR1C1 = ActiveCell.FormulaR1C1 + "m3"
 With ActiveCell.Characters(Start:=Len(ActiveCell.FormulaR1C1), Length:=1).Font
  .Superscript = True               
'上付きにする
 End With
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
Sub macro_km2()
 On Error Resume Next
 ActiveCell.FormulaR1C1 = ActiveCell.FormulaR1C1 + "km2"
 With ActiveCell.Characters(Start:=Len(ActiveCell.FormulaR1C1), Length:=1).Font
  .Superscript = True              
 '上付きにする
 End With
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
Sub macro_φ()
 On Error Resume Next
 ActiveCell.FormulaR1C1 = ActiveCell.FormulaR1C1 + "φ"
 Selection.HorizontalAlignment = xlRight
   '右揃えにする
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
Sub macro_π()
 On Error Resume Next
 ActiveCell.FormulaR1C1 = ActiveCell.FormulaR1C1 + "π"
 Selection.HorizontalAlignment = xlRight    
'右揃えにする
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
7 セルの書式設定
Sub セルの書式設定()
 Selection.NumberFormatLocal = "@"  
'表示形式を文字列にする
 With Selection
  .HorizontalAlignment = xlCenter    
'横位置を中央揃えにする
  .VerticalAlignment = xlCenter       
'縦位置を中央揃えにする
  .WrapText = True             
'折り返して全体を表示
  .Orientation = 15             
'セルの内容に角度をつける
  .AddIndent = False             
'Trueで、インデント設定
  .ShrinkToFit = False            
'Trueで、縮小にする
  .MergeCells = True            
'セルを結合する
 End With
 With Selection.Font
  .Name = "MS P明朝"           
'フォントを変更
  .FontStyle = "斜体"           
'斜体にする
  .Size = 14                  
 'サイズ14
  .Strikethrough = False           
'Trueで水平な取り消し線
  .Superscript = False            
'Trueで、上付き文字
  .Subscript = False              
'Trueで、下付き文字
  .OutlineFont = False             
'Trueで、アウトライン
  .Shadow = False              
'Trueで、影付き
  .Underline = xlUnderlineStyleDouble  
'下線の指定
  .ColorIndex = 7              
'文字色指定
 End With
 With Selection.Interior
  .ColorIndex = 3              
 '塗りつぶし色指定
  .Pattern = xlChecker           
 '網がけを指定
  .PatternColorIndex = 41         
'網がけの塗りつぶし色指定
 End With
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
8 セルの書式、ユーザー定義の表示形式
こちらのHIITANさんのページ『Addicted To Excel』に大変詳しい一覧が掲載して頂いてあります。
http://park8.wakwak.com/~web-doc/excel/exhyou2.htm
# 一桁の数字を表示します。
0 一桁の数字を表示します。
ただし、小数点以下で使用した場合は、余分なゼロも表示します。
, #、0、で囲んだ場合、千単位の桁区切記号として表示します。
. 小数点として表示します。
% 数値に100をかけて「%」を付けて表示
[赤] 指定した色を付けて表示します。
ほかに、「黒、青、水、緑、紫、白、黄色」が表示できます。
" これで囲んだ文字列は、そのまま表示します。
\ そのまま表示します。
他にスペース、$、‐、+、「、」、が、”で囲まなくても、そのまま表示できます。
_ この後の文字と同じ文字間を開けて表示します。
@ この記号の位置に、文字列を当てはめて表示します。
9 セルの書式、日付の表示形式で使う書式記号 (2001/2/1の場合)
yy 01 西暦の年数
yyyy 2001 西暦の年数
g H 元号
gg 元号
ggg 平成 元号
e 13 平成の年数
ee 13 平成の年数(一桁の場合、頭に0が付きます)
m 2
mm 02 月(一桁の場合、頭に0が付きます)
mmm Feb
mmmm February
mmmmm F
d 1
dd 01
ddd Thu 曜日
dddd Thursday 曜日
aaa 曜日
aaaa 木曜日 曜日
10 セルの書式、時刻の表示形式で使う書式記号 その1  ( 例 3:06:08 )
h 3
hh 03
m 6
mm 06
s 8
ss 08
h:mm AM/PM 3:06 AM 12時間表示
h:mm am/pm 3:06 am 12時間表示
h:mm A/P 3:06 A 12時間表示
h:mm a/p 3:06 a 12時間表示
11 セルの書式、時刻の表示形式で使う書式記号 その2
    24時間以上、60分・60秒以上の場合( 例 47:08:27 )
[h]:mm:ss 47:08:27
[mm]:ss 2828:27
[ss] 169707
12 セルの書式、色の表示形式で使う書式記号    
表示形式で色を設定するには、色の名前 (以下の 8 色) のいずれかを角かっこ ([ ]) で囲んで入力します。
これらの色コードは書式部分の先頭に指定する必要があります。
[黒]  [青]  [水]  [緑]  [紫]  [赤]  [白]  [黄]
13 行の書式を記憶させておくには?(アクティブなセルの行だけ塗りつぶす)
http://www.ae.wakwak.com/~efc21/cgi-bin/wwwlng.cgi?print+200107/01070274.txt
  「行の情報を記憶するには?」 【VBAラウンジ】
書式の一時保存には別のワークシートを使ってます。
Dummyという名前のシートを追加してから、コードを実行してみてください。
該当シート上で右クリック→選択行色付けONを選ぶと色がつくようになります。
コピペするときはもう一度右クリック→選択行色付けOFFを選択してください。

Public IsColorOn As Boolean
Private PrevCell As Range

Sub ColorON()
 If MsgBox("選択されたセルを含む行に色をつけます。" & vbCrLf & _
            "(単一行選択時のみ)" & vbCrLf & _
            "データのコピぺはできません。続けますか?", _
            vbOKCancel + vbQuestion) = vbCancel Then Exit Sub
    IsColorOn = True
    ColorShow Selection
    Application.CommandBars("Cell").Reset
End Sub

Sub ColorOff()
    IsColorOn = False
    With Selection
        If Not PrevCell Is Nothing Then
            Worksheets("Dummy").Rows(1).Copy
            PrevCell.EntireRow.PasteSpecial xlPasteFormats
            Application.CutCopyMode = False
        End If
        .Select
    End With
    Application.CommandBars("Cell").Reset
End Sub

Public Sub ColorShow(ByVal Target As Range)
    Dim SaveArea As Range
    If IsColorOn Then
        On Error Resume Next
        With Application
            .ScreenUpdating = False
            .EnableEvents = False
            Set SaveArea = Worksheets("Dummy").Rows(1)
            If Not PrevCell Is Nothing Then
                SaveArea.Copy
                PrevCell.EntireRow.PasteSpecial xlPasteFormats
                Set PrevCell = Nothing
            End If
            If Target.Areas.Count = 1 And Target.Rows.Count = 1 Then
                With Target.EntireRow
                    .Copy
                    SaveArea.PasteSpecial xlPasteFormats
                    .Interior.ColorIndex = 8
                End With
                Target.Select
                Set PrevCell = ActiveCell
            End If
            Target.Select
            Set SaveArea = Nothing
            .CutCopyMode = False
            .EnableEvents = True
            .ScreenUpdating = True
        End With
    End If
End Sub
  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    With Application.CommandBars("Cell")
        .Reset
        With .Controls
            With .Add
                .BeginGroup = True
                If IsColorOn Then
                    .Caption = "選択行色付けOFF"
                    .OnAction = "ColorOff"
                Else
                    .Caption = "選択行色付けON"
                    .OnAction = "ColorON"
                End If
            End With
        End With
    End With
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    ColorShow Target
End Sub

  このコードの使い方は、マクロの使い方(2)該当するシートのモジュールにあります。
Private PrevCell As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    On Error GoTo ErrorHandler

    If Target.Cells.Count > 1 Then Exit Sub
    If Not PrevCell Is Nothing Then
        If Target.Row = PrevCell.Row Then Exit Sub
            Application.ScreenUpdating = False
            Application.EnableEvents = False
        Rows(65536).Copy
        PrevCell.EntireRow.PasteSpecial Paste:=xlFormats
    End If
    Target.Activate
    Target.EntireRow.Copy Rows(65536)
    Target.EntireRow.Interior.ColorIndex = 8
    Set PrevCell = Target
ErrorHandler:
    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub

  このコードの使い方は、マクロの使い方(2)該当するシートのモジュールにあります。
14 マクロで条件付書式(数式)を設定するには?
http://www.ae.wakwak.com/~efc21/cgi-bin/wwwlng.cgi?print+200206/02060188.txt
  「VBAから条件付き書式を設定時にはSelectは必須?」
【VBAラウンジ】
Selectしないで条件付書式の数式を設定するには、R1C1形式で数式を書きます。
マクロの自動記録を取る際、列表示をR1C1形式にしてから記録すると、R1C1形式の数式を記録できます。

Sub miko_test()
 Dim i As Long
 '2行目からA列の最終行まで設定
 For i = 2 To Cells(Application.Rows.Count, "A").End(xlUp).Row
  '合計欄(M列、13列目)の計算式を記入
  Cells(i, 13).FormulaR1C1 = "=SUM(RC[-3]:RC[-1])"
  '【合計】欄の条件付書式を設定
  With Cells(i, 13)
   '一つ目の書式
   .FormatConditions.Delete ’書式をいったんクリア
   
’D列が空白でなく、かつ、H列とM列が同じ値でないと言う数式の条件
   .FormatConditions.Add Type:=xlExpression, Formula1:="=AND(RC4<>"""",RC8<>RC)"
   .FormatConditions(1).Font.Bold = True
   .FormatConditions(1).Font.ColorIndex = 3
   '二つ目の書式
   .FormatConditions.Add Type:=xlExpression, Formula1:="=RC4<>"""""
   .FormatConditions(2).Font.ColorIndex = xlAutomatic
  End With
 Next
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。

 

HOME  検索  索引  もくじ  関数目次ージへ        次ページへ

このページのTOPへ

 

 

 

 

 

inserted by FC2 system