2

セル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を使用しています

4

1 に答える 1

0

これはあなたがしようとしていることですか?(質問を正しく理解できていることを願っています。そうでない場合は、お気軽に訂正してください

このコードをモジュールに貼り付けて、以下のスクリーンショットに示すように=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座標が降順であることを前提としています。すべてのシナリオに対応するには、そのチェックを関数に含める必要があります。

于 2013-01-22T07:43:05.380 に答える