[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『マクロで特定の文字列を削除&フリガナ挿入』(takasweet)
一つのブックに複数のシートがあり A1のセルにデーターが入っているとします。例えば会社名で
株式会社AAAAAAAAAA
・
・
BBBBBBBBB株式会社
・
・
CCCCC株式会社DDDDDD
先頭にきている株式会社の文字列のみ削除をして A1の左側に新しい列を挿入してそのセルにフリガナをふりたいのですが どうすればよいでしょうか? 対象は一つのブックの全シートです。
[エクセルのバージョン] Excel2003 [OSのバージョン] WindowsXP
です。宜しくお願い申し上げます。
こんにちは。かみちゃん です。
> 先頭にきている株式会社の文字列のみ削除をして > A1の左側に新しい列を挿入してそのセルにフリガナをふりたい
以下のような感じではいかがでしょうか? A列のデータが入力しているデータであれば、 rngList.SetPhonetic は不要かもしれませんが、どこかから、貼り付けしてきているデータであれば、フリガナ情報をもって いない場合がありますので、上記コードで、ふれがらテキスト文字列を取得しますが、誤変換する場合 もありますので、変換後は、目視等で確認したほうがいいです。
なお、以下のコードは、アクティブシートの場合です。
Sub Sample() Dim c As Range Dim rngList As Range
With ActiveSheet.Range("A1")
Set rngList = .Resize(.Offset(.Parent.Rows.Count - .Row).End(xlUp).Row - .Row + 1)
End With
rngList.SetPhonetic
For Each c In rngList
If Left(c.Value, 4) = "株式会社" Then
c.Value = Mid(c.Value, 5)
End If
c.Offset(, 1).Value = Application.GetPhonetic(c.Value)
Next
MsgBox "終了"
End Sub
> 対象は一つのブックの全シートです。
以下のような感じで、アクティブブックの全シート名が順番に取得されますから、参考にして、ご自身 で少し考えてみてはいかがでしょうか? Sub Sample1_1() Dim ws As Worksheet
For Each ws In Worksheets
MsgBox ws.Name
Next
End Sub
もし、わからなければ、何がわからないかを明確にして聞いてみてください。
(かみちゃん) 2009-02-14 12:24
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.