如何编写excel宏来计算点之间的累积距离
我正在尝试编写一个Excel宏,它将根据点的x和y坐标计算点之间的累积距离。以下是我当前工作表设置的示例:如何编写excel宏来计算点之间的累积距离,excel,pythagorean,vba,Excel,Pythagorean,Vba,我正在尝试编写一个Excel宏,它将根据点的x和y坐标计算点之间的累积距离。以下是我当前工作表设置的示例: Point # Code x coordinate y coordinate Cumulative distance between points 1 1 39.4 99.8 0 2 1 42.5
Point # Code x coordinate y coordinate Cumulative distance between points
1 1 39.4 99.8 0
2 1 42.5 104.5 ?
3 1 43.0 105.8 ?
4 2 34.0 150.5 ?
5 3 38.9 145.9 ?
6 1 46.2 103.4 ?
7 1 48.5 105.3 ?
8 4 67.6 98.5 ?
9 1 50.3 103.2 ?
我需要“点之间的累积距离”列,以使用毕达哥拉斯公式=SQRTD2-D1^2+C2-C1^2计算该点与上一点之间的距离。对于“点之间的累积距离”列中的每个后续值,该值必须计算上一个点之间的距离,并将计算出的所有距离相加
这是踢球的人。我只想计算两点之间的距离,如果它们的代码都是1。如果你看我的例子,你会发现我的代码值在1-4之间
因此,在上面的例子中,我想计算点2和1之间的距离。接下来,我将计算点3和2之间的距离,并将其添加到从列中的上一个单元格获得的值=点2和1之间的距离。接下来我将跳过第4点和第5点,因为它们没有代码=1。下一次计算将在第6点和第3点之间进行,因为它们都有代码=1。第8点将被跳过,因为代码=4。然后计算点9和点7之间的距离。请记住,每次在“点之间的累积距离”列中计算值时,该值必须是将所有以前的值相加的累积值
最后,我需要以下几点:
-在“点之间的累积距离”列中,当两个代码均为1时,使用x、y坐标计算点之间的距离。
-将以前的累积距离添加到单元格值,以获得运行总距离
我希望这是清楚的,如果没有,我可以填补任何令人困惑的空白。您可以在工作表上完成这项工作,尽管只需增加几列 1创建复制x和复制y的两个新列。将公式放在这些列中,如果行上的代码为1,则复制该行上的x和y列。对于任何其他代码,请复制上一行中复制的x和y值。使用Excel IF函数执行此操作
2计算所有连续复制的x和y上的累积毕达哥拉斯差值。它将为代码不是1的任何行添加零贡献。这是您添加的最后一个专栏。+1:您的问题很清楚,提出得很好