Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


62108 / 76732 ←次へ | 前へ→

【19232】Re:略語リストからの置換(汎用バージョ...
お礼  momo  - 04/10/26(火) 12:06 -

引用なし
パスワード
   ▼ちゃっぴ さん:
おはようございます。

いつも丁寧なアドバイスありがとうございます。m(_ _)m


アドバイスどおり列に関してもループさせてうまくいきました。

さらに汎用性を高めるのには、現在は同じワークシート内に
略語リスト、置換対象データ、がないと動かないので
別シートに略語リストがあっても動くようにしたいですね。

ちょっと汎用性というより趣味的ですが。


:::::::ちなみに変更したところは::::::::::::::::::::::::::::::::::::::::

  Dim vntTarget  As Variant '置換対象範囲の中のデータ
  Dim vntList   As Variant '略語リストの中の略語
  Dim Targetcolumn As Long  '置換対象の列数を数える
  Dim i As Long, j As Long, k As Long


  '略語リストを配列に格納
  vntList = Range(myCell).Value
 
  '置換対象文字列を配列に格納
  vntTarget = Range(myCell2).Value
 
  Targetcolumn = myCell2.Columns.Count '置換対象の列数を数える

  '置換処理
  For k = 1 To Targetcolumn
   For i = 1 To UBound(vntTarget)
     For j = 1 To UBound(vntList)
       vntTarget(i, k) = Replace$(vntTarget(i, k), _
         vntList(j, 1), vntList(j, 2), 1, -1, 0)
     Next j
   Next i
  Next k

  '置換した配列を一括出力
  Range(myCell2).Value = vntTarget
  Set rngTarget = Nothing

End Sub

1 hits

【19213】略語リストからの置換(汎用バージョン) momo 04/10/25(月) 18:44 質問
【19217】Re:略語リストからの置換(汎用バージョン) ちゃっぴ 04/10/25(月) 20:27 回答
【19232】Re:略語リストからの置換(汎用バージョ... momo 04/10/26(火) 12:06 お礼

62108 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free