「ふりがなが」バックにあるのね。
並べ替えは、漢字でもあいうえお順に並ぶね。
並べ替えは、漢字でもあいうえお順に並ぶね。昔はアスキーコード順といって文字コード順だった。Excelは見えないがバックでふりがな使ってる。
名簿の名前の入力の場合、空白文字が前後にあったり、名字の後に空白文字が2つや、ひらがなをカタカナ入力、半角のカタカナなど。また、渡辺、 渡部 、渡邉など同じふりがなだが入力間違い。この対処は、ふりがなで並べ替えて住所などの他の列で判断するしかない。
- 空白文字を取り除く。ワークシート関数のTRIM(トリム)
- ふりがなを確認する:ワークシート関数のPHONETIC( フォネティック )
- ふりがなの情報がない場合の登録:マクロ記録で調べる
ActiveCell.SetPhoneticでふりがな登録できます。SetがあったらGetがあるでしょう。GetPhoneticはApplicationにあるということは、 SetPhonetic での読みに関してはアプリ/Excelが持っている辞書で「よみがな」が入るということです。以下は、イミディエイトウィンドウで入力。?から始まる行は入力。その下は出力。
?application.GetPhonetic("英語")
エイゴ
会社のデータベースからデータを取って来る場合は、拡張子がCSVやTXTでしょう。CSVはそのままExcelで読んでもきっちりセルに割り当てますが、TXTの方は 文字列の区切りを指定するウィザードが起動するかもしれません。
動画のデータ作成用マクロ。
Sub 表作成()
Range("A1").Select
ActiveCell.FormulaR1C1 = "番号"
ActiveCell.Characters(1, 2).PhoneticCharacters = "バンゴウ"
Range("B1").Select
ActiveCell.FormulaR1C1 = "名前"
ActiveCell.Characters(1, 2).PhoneticCharacters = "ナマエ"
Range("c1").Select
ActiveCell.FormulaR1C1 = "説明"
ActiveCell.Characters(1, 2).PhoneticCharacters = "セツメイ"
Range("A2").Select
ActiveCell.FormulaR1C1 = "1"
Range("A2").Select
Selection.AutoFill Destination:=Range("A2:A14"), Type:=xlFillSeries
Range("A2:A14").Select
Range("B2").Select
ActiveCell.FormulaR1C1 = "前田 あきこ"
ActiveCell.Characters(1, 2).PhoneticCharacters = "マエダ"
Range("B3").Select
ActiveCell.FormulaR1C1 = "前田 あきこ "
ActiveCell.Characters(1, 2).PhoneticCharacters = "マエダ"
Range("B4").Select
ActiveCell.FormulaR1C1 = "前田アキコ"
ActiveCell.Characters(1, 2).PhoneticCharacters = "マエダ"
Range("C4").Select
ActiveCell.FormulaR1C1 = "←空白文字なしでカタカナ"
ActiveCell.Characters(2, 4).PhoneticCharacters = "クウハクモジ"
Range("C2").Select
ActiveCell.FormulaR1C1 = "←全角空白文字2つ"
Range("C3").Select
ActiveCell.FormulaR1C1 = "←半角角空白文字"
Range("B5").Select
ActiveCell.FormulaR1C1 = "前田あきこ"
ActiveCell.Characters(1, 2).PhoneticCharacters = "マエダ"
Range("C5").Select
ActiveCell.FormulaR1C1 = "←空白文字なし"
ActiveCell.Characters(2, 4).PhoneticCharacters = "クウ"
Range("B6").Select
ActiveCell.FormulaR1C1 = "前田 あきこ "
ActiveCell.Characters(1, 2).PhoneticCharacters = "マエダ"
Range("B7").Select
ActiveCell.FormulaR1C1 = "前田アキコ"
ActiveCell.Characters(1, 2).PhoneticCharacters = "マエダ"
Range("B8").Select
ActiveCell.FormulaR1C1 = "前田 あきこ "
ActiveCell.Characters(1, 2).PhoneticCharacters = "マエダ"
Range("C5").Select
ActiveCell.FormulaR1C1 = "←空白文字なし"
ActiveCell.Characters(2, 4).PhoneticCharacters = "クウ"
Range("C6").Select
ActiveCell.FormulaR1C1 = "←先頭最後に空白"
Range("C7").Select
ActiveCell.FormulaR1C1 = "←名前が半角カタカナ"
ActiveCell.Characters(2, 2).PhoneticCharacters = "ナマエ"
ActiveCell.Characters(5, 2).PhoneticCharacters = "ハンカク"
Range("C8").Select
ActiveCell.FormulaR1C1 = "←全角空白文字、最後にも空白文字"
ActiveCell.Characters(2, 2).PhoneticCharacters = "ゼンカク"
ActiveCell.Characters(4, 2).PhoneticCharacters = "クウハク"
ActiveCell.Characters(6, 2).PhoneticCharacters = "モジ"
Range("B9").Select
ActiveCell.FormulaR1C1 = "吉田裕子"
ActiveCell.Characters(1, 4).PhoneticCharacters = "ヨシダユウコ"
Range("B10").Select
ActiveCell.FormulaR1C1 = "吉田 裕子"
ActiveCell.Characters(1, 2).PhoneticCharacters = "ヨシダ"
ActiveCell.Characters(4, 2).PhoneticCharacters = "ユウコ"
Range("B11").Select
ActiveCell.FormulaR1C1 = " 吉田 裕子"
ActiveCell.Characters(2, 2).PhoneticCharacters = "ヨシダ"
ActiveCell.Characters(5, 2).PhoneticCharacters = "ユウコ"
Range("C11").Select
ActiveCell.FormulaR1C1 = "←先頭に空白文字"
ActiveCell.Characters(2, 2).PhoneticCharacters = "セントウ"
ActiveCell.Characters(5, 4).PhoneticCharacters = "クウハクモジ"
Range("B12").Select
ActiveCell.FormulaR1C1 = "渡部 真一"
ActiveCell.Characters(1, 2).PhoneticCharacters = "ワタナベ"
ActiveCell.Characters(4, 2).PhoneticCharacters = "シンイチ"
Range("B13").Select
ActiveCell.FormulaR1C1 = "渡辺真一"
ActiveCell.Characters(1, 2).PhoneticCharacters = "ワタナベ"
ActiveCell.Characters(3, 2).PhoneticCharacters = "シンイチ"
Range("B14").Select
ActiveCell.FormulaR1C1 = "綿鍋真一"
ActiveCell.Characters(1, 2).PhoneticCharacters = "ワタナベ"
ActiveCell.Characters(3, 2).PhoneticCharacters = "シンイチ"
Range("C11").Select
ActiveCell.FormulaR1C1 = "←先頭に空白文字"
ActiveCell.Characters(2, 2).PhoneticCharacters = "セントウ"
ActiveCell.Characters(5, 4).PhoneticCharacters = "クウハクモジ"
Range("C13").Select
ActiveCell.FormulaR1C1 = "←上と名前は同じ?"
ActiveCell.Characters(2, 1).PhoneticCharacters = "ウエ"
ActiveCell.Characters(4, 2).PhoneticCharacters = "ナマエ"
ActiveCell.Characters(7, 1).PhoneticCharacters = "オナ"
Range("C14").Select
ActiveCell.FormulaR1C1 = "←漢字変換間違い"
ActiveCell.Characters(2, 4).PhoneticCharacters = "カンジヘンカン"
ActiveCell.Characters(6, 2).PhoneticCharacters = "マチガ"
Range("A2").Select
Application.CutCopyMode = False
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$c$14"), , xlYes).Name = _
"テーブル"
Columns("B:B").EntireColumn.AutoFit
Columns("A:A").EntireColumn.AutoFit
Columns("c:c").EntireColumn.AutoFit
End Sub