advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 48 for SetPhonetic (0.000 sec.)
[[20080418153846]]
#score: 13344
@digest: 1c567dbd66dccda7d526c81483334ab5
@id: 37403
@mdate: 2008-04-21T10:56:15Z
@size: 4697
@type: text/plain
#keywords: phons (36340), 体() (19948), phn (18928), ゴヤ (17684), オサ (16854), 西区 (16793), zstrt (14996), ナゴ (13392), サカ (11549), setphonetic (11153), キョ (10446), phonetics (10384), 阪京 (9146), 区) (9082), ウキ (8791), 阪名 (8427), 体2 (8251), 合体 (7851), オオ (7825), 京大 (7250), ョウ (6898), 屋」 (6098), phonetic (5473), ガナ (5373), 」, (4972), カキ (4875), キク (4676), リガ (4476), 名古 (4458), 題発 (4431), 古屋 (4328), ウオ (4279)
『フリガナの表示』(西区)
以前,下記のようなコードを教えていただきまして,A1,A2,A3セルのデータを A2セルに合体することを教えていただきました。 Sub 合体() Dim x(2) As String x(0) = Range("A1").Value x(1) = Range("A2").Value x(2) = Range("A3").Value Range("A1:A3").ClearContents Range("A2").Value = Join(x, "") End Sub それでB2セルに「=PHONETIC(A2)」と設定して,A2セルのデータのフリガナが表示される ようにします。 そして,A1,A2,A3セルに東京,大阪,名古屋と入力すると,まず,B2セルに「オオサカ」 とA2セルのフリガナが表示されます。 しかし,上記マクロを実行すると,A2セルは「東京大阪名古屋」と合体して表示されますが B2セルも「東京大阪名古屋」と漢字に変わってしまいます。 これを「トウキョウオオサカナゴヤ」とフリガナが表示されるようにしたいのですが どうしたらいいのでしょうか。 ---- もっといい方法があるかもしれませんが、 知恵のない方法で・・・ ^^; Sub 合体() Dim x(2) As String, y(2) As String x(0) = Range("A1").Value x(1) = Range("A2").Value x(2) = Range("A3").Value With Application.WorksheetFunction y(0) = .Phonetic(Range("A1")) y(1) = .Phonetic(Range("A2")) y(2) = .Phonetic(Range("A3")) End With Range("A1:A3").ClearContents Range("A2").Value = Join(x, "") Range("b2").Value = Join(y, "") End Sub (1or8) ---- Sub 合体() Dim Phons Dim Phn Dim x(2) As String x(0) = Range("A1").Value x(1) = Range("A2").Value x(2) = Range("A3").Value For Each Phn In Range("A1:A3").Phonetics Phons = Phons & Phn.Text Next Range("A1:A3").ClearContents With Range("A2") .Value = Join(x, "") .Phonetic.Text = Phons End With End Sub (半平太) ---- 分かりました。 どうもありがとうございました。 (西区) ---- すみません,また教えてください。 上記の半平太先生のコードで A1に「東京」,A2に「大阪 京都」(間に全角スペース入り),A3に「名古屋」と入力して マクロ実行すると,A2セルには「東京大阪 京都名古屋」となって,間に全角スペースが入りますが, B2のフリガナの欄は「トウキョウオオサカキョウトナゴヤ」となって, 間に全角スペースが入らず,全部くっついてしまいます。 これをA2セルと同じように,「トウキョウオオサカ キョウトナゴヤ」と表示させるように したいのですが,どうしたらいいのでしょうか。 (西区) ---- かような事でっか? (弥太郎) '----------------------- Sub 合体2() Dim c As Range, data As String For Each c In Range("A1:A3") data = data & c Next Range("a1:a3").ClearContents Range("a2") = data Range("a2").SetPhonetic End Sub ---- > 上記の半平太さんのコード > 間に全角スペースが入らず,全部くっついてしまいます。 本当ですね! そんな仕様になっているの知らなかったです。 (^^ゞ ・・となると、 (1or8)さんのが確実ですね。 あれ、弥太郎さんの案がスマートですね。 SetPhonetic がワークするならそちらをご採用ください。 私の苦し紛れ案 (直前のStart位置と文字数を判断してスペースを入れる) ↓ Sub 合体() Dim Phons Dim Phn As Phonetics Dim x Dim ZStrt As Long, Zlen As Long x = WorksheetFunction.Transpose(Range("A1:A3").Value) For Each Phn In Range("A1:A3").Phonetics Phons = Phons & Space(IIf(Phn.Start > 1, Phn.Start - ZStrt - Zlen, 0)) & Phn.Text ZStrt = Phn.Start Zlen = Phn.Length Next Range("A1:A3").ClearContents Range("A2").Value = Join(x, "") Range("A2").Phonetic.Text = Phons End Sub ---- 弥太郎先生のコードで試してみましたが,また問題が発生しました。 Sub 合体2() Dim c As Range, data As String For Each c In Range("A1:A3") data = data & c Next Range("a1:a3").ClearContents Range("a2") = data Range("a2").SetPhonetic For Each c In Range("A4:A6") data = data & c Next Range("a4:a6").ClearContents Range("a5") = data Range("a5").SetPhonetic End Sub として,下段にもう1組続くように設定して,たとえば A1に「あ」,A2に「い う」,A3に「え」 A4に「お」,A5に「か き」,A6に「く」 と入力すると A2は「あい うえ」,B2はフリガナで「アイ ウエ」となりますが A5は「あい うえおか きく」,B5は「アイ ウエオカ キク」 となってしまうので,2組目もきちんと 「おか きく」「オカ キク」 と表示させるにはどうしたらいいでしょうか。 (西区) ---- 問題発生は、問題発生するべくして起こります。 data=data & c というのは 変数dataにcを付け加えなさいっちゅうことですワ。 ですから一回目に使うたdataは2回目使う前に初期化しとかなあきまへん。 For Eacn ・・・・の一行前にdata=""を追加しませう。 (弥太郎) ---- できました どうもありがとうございました。 (西区) ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/200804/20080418153846.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97049 documents and 608241 words.

訪問者:カウンタValid HTML 4.01 Transitional