セルA1
にはボックスの左上の座標があり、ボックスの右下の座標があります。ボックスのすべての座標を csv 形式で表示するA2
にはどうすればよいですか?A3
元:
Cell A1 = (24,20)
Cell A2 = (26,19)
これを取得する方法:
Cell A3 = (24,20),(25,20),(26,20),(24,19),(25,19),(26,19)
エクセル2011を使用しています
セルA1
にはボックスの左上の座標があり、ボックスの右下の座標があります。ボックスのすべての座標を csv 形式で表示するA2
にはどうすればよいですか?A3
元:
Cell A1 = (24,20)
Cell A2 = (26,19)
これを取得する方法:
Cell A3 = (24,20),(25,20),(26,20),(24,19),(25,19),(26,19)
エクセル2011を使用しています
これはあなたがしようとしていることですか?(質問を正しく理解できていることを願っています。そうでない場合は、お気軽に訂正してください)
このコードをモジュールに貼り付けて、以下のスクリーンショットに示すように=GetCord(A1,A2)
セル内を呼び出します。A3
Public Function GetCord(rng1 As Range, rng2 As Range) As String
Dim strTmp As String, strTmp1 As String, strTmp2 As String
Dim a As Long, b As Long, i As Long, j As Long, k As Long
strTmp1 = rng1.Value: strTmp2 = rng2.Value
strTmp1 = Trim(Replace(strTmp1, "(", ""))
strTmp1 = Trim(Replace(strTmp1, ")", ""))
strTmp2 = Trim(Replace(strTmp2, "(", ""))
strTmp2 = Trim(Replace(strTmp2, ")", ""))
i = Val(Split(strTmp1, ",")(0))
j = Val(Split(strTmp1, ",")(1))
k = Val(Split(strTmp2, ",")(0))
l = Val(Split(strTmp2, ",")(1))
For b = j To l Step -1
For a = i To k
strTmp = strTmp & "(" & a & "," & b & "),"
Next a
Next b
GetCord = Left(strTmp, Len(strTmp) - 1)
End Function
スクリーンショット
注: 上記の関数は、y
座標が降順であることを前提としています。すべてのシナリオに対応するには、そのチェックを関数に含める必要があります。