『セル範囲を示す文字列の値の1行上の文字列を返す関数』(アスリー)
C列2行目の値「62」
C列3行目の値「58」
C列4行目の値「54」
・
・
C列16行目の値が「6」
と-4ずつ減っていきます。
C列17行目の値は又「62」から始まり
1行下に行くことに-4ずつ減っていきます。
B2セルの数式「="V"&C4&":"&"AK"&C4」
B2セルの値「V62:AK62」
となっています。
B2セルは、C列n行目の値が「6」の次の行から
「AP62:AW62」
という様に、列名が変わっていきます。
そこで、A列にはB列で指定されている列名は変えずに、
行数だけを-1できればいいなと思っています。
A2セルの値が、B2セルの範囲の1つ上「V61:AK61」や
「AP62:AW62」となるようなワークシート関数はあるのでしょうか。
どなたかご教授くださいますよう、
よろしくお願いいたします。
< 使用 Excel:Microsoft365、使用 OS:Windows11 >
Sub aaa()
Dim ws As Worksheet
Dim rng As Range
Dim lngRow As Long
Set ws = Worksheets("Sheet2")
For lngRow = 4 To ws.Cells(Rows.Count, "B").End(xlUp).Row
Set rng = Range(ws.Cells(lngRow, "B").Value)
Set rng = rng.Offset(-1, 0)
ws.Cells(lngRow, "A").Value = rng.Address(False, False)
Next lngRow
End Sub
(アスリー) 2026/10/29(木) 16:29:17
=LET(_a,A2,
_n,REGEXEXTRACT(_a,"[0-9]+")-1,
REGEXREPLACE(_a,"[0-9]+",_n)
)
解決しているみたいですけど ワークシート関数案 (ちくわ) 2026/10/29(木) 17:13:26
あ、参照先間違えてるし_nもc列見ればいいですね 馬鹿ですね。 (ちくわ) 2026/10/29(木) 17:19:09
[C2] =60-(MOD(ROW($A1)-1,15)+1)*4+6
などと質問外で遊んでたらもう終わってた...
(白茶) 2026/10/29(木) 17:27:22
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.