![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.4ベストアンサー
- 回答日時:
次のマクロを実行すると振り仮名が設定されます。
10~12行目を実情に合わせて設定してください。
Sub rubi_uchi()
'ルビ打ち、非表示
Dim retsu As String
Dim cel_ichi As String
Dim rec As Long
Dim kana As Variant
Dim strPhoText As Variant
Dim start_rec As Long
Dim end_rec As Long
retsu = "A" ' 列を指定
start_rec = 1 ' 開始行を指定
end_rec = 1000 ' 終了行を指定
For rec = start_rec To end_rec
cel_ichi = retsu & CStr(rec)
Range(cel_ichi).Select
strPhoText = ActiveCell
kana = Application.GetPhonetic(strPhoText)
ActiveCell.Characters.PhoneticCharacters = kana
If Not IsEmpty(strPhoText) Then
ActiveCell.Phonetics(1).CharacterType = xlHiragana
'ActiveCell.Phonetics(1).CharacterType = xlKatakana
Selection.Phonetics.Visible = False
End If
Next rec
End Sub
No.5
- 回答日時:
> ただ、一つ一つのデータにこの作業を繰り返さなければならないのですか?
> 一度に処理する方法はありますでしょうか?
その答えはすでに書いてあります。
> すいません・・・初心者過ぎて恥ずかしいのですが、、、
> 具体的にどうすればいいのか下記を見てもわかりませんでした・・・
> 例えば何を開いて何を設定するとか・・・
具体的な使用方法ですが、No.3のプログラムコードをマクロから呼び出して
ください。
手順は、以下の通りです。
(1)対象となるExcelブックを立ち上げる。
(2)[ツール] メニュー - [マクロ] - [Visual Basic Editor] を実行。
(3)VBエディタの [挿入] メニュー - [標準モジュール] を実行。
(4)上記のプログラムコードをコピー & ペーストする。
(5)ワークシートのメニューより、[ツール] - [マクロ] - [新しいマクロ
の記録] を選択。
(6)マクロ名を入力し、[OK]ボタンをクリック。
(7)[ツール] - [マクロ] - [記録終了] を選択。
(8)[ツール] - [マクロ] - [Visual Basic Editor] を選択。
(9)作成された新規のマクロへ下記のように記述すれば完成です。
Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2003/02/09 ユーザー名 : nanashinogombei
'
Call GetKanaSimple("Sample", 1, 2, 2, 30)
'
End Sub
「Sampleの1列目(A列)2行 - 30行に入力されている漢字をカタカナに変換して、
2列目(B列)に出力する」処理となります。
No.3
- 回答日時:
> ご回答ありがとうございます。
> エクセルのマクロ等、まったく初心者なので、GetPhoneticメソッドの
> 使い方(設定?)を教えてください。
> ワークシート関数のPHONETIC を使っても、漢字のままでてきてしまいます。
例えば、A1のフリガナが欲しい場合は、まず、A1のセルを選択して、
メニューの[書式] - [ふりがな] - [編集]を選択して<Enter>キーを
叩いてください。その後、カナを表示したいセルに、
=PHONETIC(A1)
のように関数式を記述すればOKです。
GetPhoneticメソッドは、一例ですが、下記のように使います。
Option Explicit
Public Function GetKanaSimple(ByRef strWorkSheetName As String, _
ByVal InColmn As Long, _
ByVal OutColmn As Long, _
Optional ByVal StartRow As Long = 1, _
Optional ByVal EndRow As Long = -1)
'*************************************************************************************
'
'機 能 : 指定範囲のセルに格納された漢字をカタカナに変換し、別の列に出力する。
'
'引 数 : strWorkSheetName 処理対象ワークシート名(通常はActiveSheet.Nameで可)
' InColmn 入力列番号
' OutColmn 出力列番号
' StartRow 開始行(省略可) 規定値は1
' EndRow 終了行(省略可) 規定値は有効セルの最終行
'
'戻 り 値 : 変換後の文字列。
'
'*************************************************************************************
Dim i As Long
'処理対象範囲の終了行が指定されていない場合は、入力済み範囲の最終行とみなす。
If EndRow = -1 Then
EndRow = Worksheets(strWorkSheetName).UsedRange.Rows.Count
End If
With Worksheets(strWorkSheetName)
'指定範囲の開始行から終了行まで順次処理する。
For i = StartRow To EndRow
'変換されたカタカナを指定のセルに入力する。
.Cells(i, OutColmn).Value = Application.GetPhonetic(.Cells(i, InColmn).Value)
Next i
End With
End Function
この回答への補足
ありがとうございます。
>例えば、A1のフリガナが欲しい場合は、まず、A1のセルを選択して、
>メニューの[書式] - [ふりがな] - [編集]を選択して<Enter>キーを
>叩いてください。その後、カナを表示したいセルに、
>=PHONETIC(A1)
>のように関数式を記述すればOKです。
できました。
ただ、一つ一つのデータにこの作業を繰り返さなければならないのですか?
一度に処理する方法はありますでしょうか?
>GetPhoneticメソッドは、一例ですが、下記のように使います。
すいません・・・初心者過ぎて恥ずかしいのですが、、、
具体的にどうすればいいのか下記を見てもわかりませんでした・・・
例えば何を開いて何を設定するとか・・・
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロ作成初心者です。CSVファイルの日付データについて 3 2022/12/14 06:02
- Excel(エクセル) Excelに関して質問があります。 写真のようなことが起こりました。 解決方法が分かりません。 どな 2 2023/05/30 05:54
- Excel(エクセル) 【エクセル関数】アルファベットで以上だったらカウントする 4 2022/07/09 14:07
- Excel(エクセル) 文字化け。メモ帳でUTF-8に変換後、エクセルへ貼り付けたいです。 3 2022/08/14 07:21
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- 教育学 エクセルで小数点以下を四捨五入について教えてください。 2 2023/04/05 17:33
- Excel(エクセル) エクセル 関数について 2 2022/10/10 07:56
- Excel(エクセル) VBA セルの値と同じ名前のシートにデータを貼り付けするやり方を教えてください 2 2022/05/17 16:26
- Excel(エクセル) エクセルで作った文章を図で貼り付けたが元のエクセルが削除したので図からエクセルに戻したい 4 2022/07/05 08:11
- Excel(エクセル) マクロVBAのフォルダ階層別で検索の方法 4 2022/04/03 23:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel(VBA)データ入力に応じて...
-
Excelでセル内の数式は残し値だ...
-
昨日、エクセルVBAで、隣のセル...
-
整数行を残し小数点の行を削除...
-
条件に応じて特定の行を非表示...
-
Excelで周期的に列を削除する方法
-
エクセル VBA 小数点を含む数字...
-
Excelアルファベットを含む数値...
-
Excel にて非表示行を探すワー...
-
エクセルで特定の数字となる組...
-
Excel2007で、太字にした行のみ...
-
行の入れ替えってどうするの?
-
「マクロ」の足し算の式を教え...
-
エクセルのふりがなの関数について
-
Excelで連続印刷をするマクロ
-
Excelで金銭出納帳。繰越残高を...
-
エクセルの複数シートの保護を...
-
エクセルでファイルを開いたと...
-
シートを追加・名前を次月に変...
-
特定のシートの削除を禁止した...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
条件に応じて特定の行を非表示...
-
Excel2007で、太字にした行のみ...
-
Excelで連続印刷をするマクロ
-
Excelでセル内の数式は残し値だ...
-
「マクロ」の足し算の式を教え...
-
エクセル VBA 小数点を含む数字...
-
エクセルで全ての数字間にカン...
-
Excel(VBA)データ入力に応じて...
-
wordのvbaでハイパーリンク設定...
-
Excel にて非表示行を探すワー...
-
Excel2007 セルを右方向に削除...
-
エクセル2003でマクロをおこな...
-
エクセルで、行ごとの並び替え...
-
値貼り付けをしても書式も貼り...
-
VBA コピーを有効行までループ...
-
yyyy/mm/ddの日付に一括変換す...
-
整数行を残し小数点の行を削除...
-
エクセルで行と列を入れ替えキ...
-
エクセルで特定の数字となる組...
-
エクセルで連番をマクロで
おすすめ情報