
以下のVBAで該当文字列の前後に付与したい。
例
前に付与 abc
ユーザーID 12345
後に付与 @sample.com
結果 abc12345@sample.com
下記の内容だと1対象分なので、これを対象数分に適応したいです。
また対象数は一律ではないので、該当数を最終行まで実行したいです。
対象をa2〜最終行まで処理させる為にはどうしたら良いでしょうか?
前後は変わらず中にくるユーザーIDのみa2列から参照させたいです。(都度対象者数が変動する)
Sub address()
'文字列格納用の変数を用意する
Dim Text As String
Dim BeforeText As String
Dim AfterText As String
'文字列を変数に代入する
Text = Cells(1, 2).Value
BeforeText = Cells(2, 2).Value
AfterText = Cells(3, 2).Value
'文字列の先頭と末尾に文字列を追加
Cells(5, 2).Value = BeforeText & Text & AfterText
End Sub
説明がうまくできず申し訳ございませんが、ご教示いただけますと幸いです。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
対象数分、を明確にしましょう。
案1. A1セルに書いた数
Range("A1").Value で数を読み出し
案2. A2セルから下方向に領域の終わりまでの行数
Range("A2").End(xlDown).Rows.Count で数を読み出し
参考)
https://docs.microsoft.com/ja-jp/office/vba/api/ …
数が決まれば単純な繰り返しです。
For r=1 To 数
_ 行 = 先頭行+(r-1)
_ Cells(行,5).Value = 前 & Cells(行,1).Value & 後
Next
No.2
- 回答日時:
こんばんは、
列と行を間違えていませんか?
>対象をa2〜最終行まで処理させる為にはどうしたら良いでしょうか?
前後は変わらず中にくるユーザーIDのみa2列から参照させたいです。(都度対象者数が変動する)
だとすると・・こんな感じです
Sub address()
Dim i As Long 'ループカンター変数
Const firstText As String = "abc" '定数
Const lastText As String = "@sample.com" '定数
'2行目から最終行まで繰り返し処理
For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
'文字列の先頭と末尾に文字列を追加 (B列に出力)
Cells(i, "B").Value = firstText & Cells(i, "A").Text & lastText
Next
End Sub
Cells(Rows.Count, "A").End(xlUp).Rowは値のあるA列最終行番号
一番下のセル(A1048576セル)からCtrl+↑を押した時に選択されるセルの行№
No.1
- 回答日時:
こんばんは。
直接の回答ではありませんが、
セルA2:ユーザーID があって、これは完全に固定?
他のデータがどの様に並んでいるのでしょうか?B2とC2、B3とC3・・・?
マクロだと、B列にデータがある様な感じですが。。。
書き出しは1行空けて記載されるのでしょうか?
例題を画像で載せて貰えると解り易いかと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでアルファベットか数...
-
VBの「As String * 128」とは?
-
アクセスで特定の数字以外(複...
-
エクセルで文字列をtxtファイル...
-
エクセル 数値データを桁をそ...
-
同一セル内に関数と文字列を同...
-
LEFT関数で文字数を指定しない...
-
【Excel VBA】複数ある特定の文...
-
EXCELで=より左の文字を一括で...
-
Excelで3E8を3.00E+8にしない方...
-
文字列からタブコードを取り除...
-
エクセルで文字列の最大値を抽...
-
VBAを使って選択した範囲の数字...
-
Excelで指数表現しないようにす...
-
エクセルでセル内の文字列の最...
-
excel vba 17桁の数字が表示で...
-
VBAでの Replace関数で、ワイル...
-
Excel VBAのFormulaR1C1について
-
VBA2005 16進を2桁で表示したい。
-
ACCESSのSQLでのカンマ’認識に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
VBAでの Replace関数で、ワイル...
-
文字列からタブコードを取り除...
-
VBA2005 16進を2桁で表示したい。
-
エクセルで文字列をtxtファイル...
-
エクセルで文字列の最大値を抽...
-
Excelで3E8を3.00E+8にしない方...
-
Left関数とRight関数を合わせた...
-
アクセスで特定の数字以外(複...
-
Msgboxの×が押されたとき
-
MS SQLServer のSQLで文字列の...
-
Excelで指数表現しないようにす...
-
ORCLEでの小数の表示方法の変更...
-
【Excel VBA】複数ある特定の文...
-
エクセル 数値データを桁をそ...
-
SQL の Update文(?) と ...
-
VBの「As String * 128」とは?
-
aaa.bbb.ccc という、「ドット...
-
同一セル内に関数と文字列を同...
おすすめ情報