質問: エクセルで数字を言葉にする 複数バージョン こちらの方法で、エクセルの数字を文字に置き換えています。 (1と入力したらりんご、2と入力したらみかん など) https://oshiete.goo.ne.jp/qa/8514181.html これを、複数行いたい場合、どのように入力すればよいのでしょうか? 例: a~c は 1=りんご 2=みかん e~h は 1=あか 2=あお など...
回答: 今後、対象列が追加される場合を考慮して汎用性を持たせてみました。 変数listに、対象列を変換候補を追加していって下さい。 private sub worksheet_change(byval target as range) dim list as variant dim area as variant dim flag as boolean ' 対象列を追加する場合はここに追加する list = array( _ array("a:c", "りんご", "みかん"), _ array("e:h", "あか", "あお", "きいろ"), _ array("i", "やま", "うみ") _ ) flag = true for each area in list if not application.intersect(target, me.columns(cstr(area(0)))) is nothing then flag = false exit for end if next if flag then exit sub if isnumeric(target.value) then if clng(target.value) > 0 and cint(target.value) <= ubound(area) then target.value = area(target.value) end if end if end sub