半角イコールを含む文章の置き換えが上手くいかず悩んでいます。
(Win10, Excel2016)
下記test1のようにストレートに置き換えを書きましたが置き換えできずに終了。
("シャアアズナブル=クワトロバジーナ" が できた に換わらずそのまま。エラー表示はなし)
test2で試してみたところ、置き換えはできましたが他の英数字やカタカナが
すべて全角になってしまうため、使い物にならず。
test3のように半角イコールのみを全角に変えて置き換えとしてみましたが、
案の定置き換えできず。
ココを直せば上手くいきそう等がありましたらご教示ください。
Replaceにこだわってるワケではないので、他に方法があればヒントだけでもいただけると
ありがたいです。ただし、
・本番用は外部が作成した文章かつ数が膨大なので、初めからイコールを除外した文章にはできません。
・外部ツールなどなどはNGな会社です。
・全て全角→置き換え→すべて半角も、他の部分で半角にしてはNGな部分があるため採用できません。
よろしくお願いいたします。
Sub test1() With ActiveSheet.UsedRange .Replace "シャアアズナブル=クワトロバジーナ", "できた", xlPart End With End Sub
Sub test2() With ActiveSheet For Each rng In .UsedRange rng.Value = StrConv(rng.Value, vbWide) Next .UsedRange.Replace "シャアアズナブル=クワトロバジーナ", "できた", xlPart End With End Sub
Sub test3() With ActiveSheet For Each rng In .UsedRange rng.Value = Replace(rng.Value, "=", "=") Next .UsedRange.Replace "シャアアズナブル=クワトロバジーナ", "できた", xlPart End With End Sub
以下追記 *・。゜・。・o゜・。゜・。・o゜・。゜・。・o゜・。゜・。・o゜・。・o゜
本番の流れは下記1~3をループでまわし、4で一括インポートする予定です。
1.登録した全国の市区町村さんごとのURLを元に、最新の情報をWebクエリで取得。
2.必要に応じて加工(パターンに応じてFunction作成、必要な部分を抜粋したり置換えたり)。
3.一定の法則に基づいて、必要なデータを取得→作表。
4.Accessにインポート。
です。ある時期に一斉に対象の市区町村さん(500くらい)のHPをチェック、更新されていればデータを取得しなければなりません。また更新されていなければ更新されるまで随時チェックする必要があり、あまりにも業務負担が重いためマクロで処理してしまいたいと考えています。
HPの情報はいろいろなフォーマットで作成されているので、2でデータを取得しやすく加工するところを書いています。現状は1と3はほぼ完成、2の部分が道半ば、4は未着手です。
例えば、
A市
なお、○○○とは...、▲は◇から100円を引いた金額のことです。
○○○(対象は...)=▲×■ 10,000円
●●●
▲+■ 50,000円
B町
○○○は...、●●●...です。
○○○は12,000円, ●●●は60,000円です。
上記の他にもいろいろありますが、
A市の場合は不要な文章と必要そうな文章、必要なデータ部分を分けるため「○○○(対象は...)=▲×■」を「○○○」に置き換えて良いかを判定、OKなら「○○○(対象は...)=▲×■」を「○○○」に置換え。3で「○○○」や「●●●」のセルの横や下にある金額のみを○○○、●●●の金額として取得、データにしています。必要そうな文章は備考欄に記入する文章として取得します(全半角は保持したい)。全角イコールを使用する市区町村さんが多いのですが、まれに半角イコールを使う市区町村さんが。半角イコールが混じるとデータにできていないことがテストで発覚し対処方法を模索しています。
B町のパターンであれば、備考欄に載せる有無の判定とデータはSplitで分けて取得しています。
こんな感じで伝わりましたでしょうか。文章がヘタですみません。
回答1件
あなたの回答
tips
プレビュー