ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: snood

[Excel 图表] [第14期]计算多边形的面积

[复制链接]

TA的精华主题

TA的得分主题

发表于 2006-8-15 03:58 | 显示全部楼层

面积比较难,其他操作上都可以实现.  (不过俺很粗心, 不知道有没有弄错.)


本来想用海伦公式- Wikipedia

一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:
S={s(s-a)(s-b)(s-c)} ^ 0.5

p={a+b+c}/ 2


不过发现不是单纯的凸边形, 比较麻烦, 需要判断. 谁用这个搞出来了?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

TA的精华主题

TA的得分主题

发表于 2006-8-15 04:15 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

版主好象没有说清楚, 图是画在哪里? 用EXCEL图表? 还是用VBA画EXCEL图表?

用EXCEL图表好象很容易哦~~

有点搞晕了!  刚才我用VBA, 画在sheet里

现在补充. 想赚点积分~~


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

TA的精华主题

TA的得分主题

发表于 2006-8-15 23:52 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

TA的精华主题

TA的得分主题

发表于 2006-8-20 15:54 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

做做试试:


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

TA的精华主题

TA的得分主题

发表于 2006-8-26 23:36 | 显示全部楼层

刚加入论坛时费了九牛二虎之力用“海伦公式”(不知道谁告诉我是“海德公式”,害我一直说错,唉,谁叫咱数学差呢),做了一个:http://club.excelhome.net/viewthread.php?tid=126056&replyID=&skin=0

不过没用图表功能,当时把gvntw的动态设置打印区域的东西硬生生地套上去了,根本就不知道到底是什么东西,哈哈。

已经两个月基本不怎么摸Excel公式了,现在感觉又吃力了。

不过有时加班头痛的时候就跑来逛逛,心情也会好些。

TA的精华主题

TA的得分主题

发表于 2006-8-30 11:44 | 显示全部楼层

我以前编写的计算多边形面积、周长的VBA程序。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?免费注册

x

TA的精华主题

TA的得分主题

发表于 2006-8-30 11:47 | 显示全部楼层
我以前编写的一个计算多边形面积、周长的VBA程序与大家共享。

TA的精华主题

TA的得分主题

发表于 2006-8-30 23:05 | 显示全部楼层

狂晕。冤死了,括号括错位置了,白丢了分:

Private Sub CommandButton1_Click()
Dim i As Integer
For i = ActiveSheet.Shapes.Count To 1 Step -1
If ActiveSheet.Shapes(i).Type = 9 Then ActiveSheet.Shapes(i).Delete
Next
End Sub

Private Sub CommandButton2_Click()
Dim i As Integer, arr, p As Single, s As Single

arr = Range("a3:b14")
For i = 2 To 12
ActiveSheet.Shapes.AddLine arr(i, 1) / 4, arr(i, 2) / 4, arr(i - 1, 1) / 4, arr(i - 1, 2) / 4
s = s + (arr(i, 1) - arr(i - 1, 1)) * (arr(i, 2) + arr(i - 1, 2)) / 2
p = p + Sqr((arr(i, 1) - arr(i - 1, 1)) ^ 2 + (arr(i, 2) - arr(i - 1, 2)) ^ 2)
Next
MsgBox "该多边形的面积为:" & s & vbCrLf & vbCrLf & "周长为:" & p
Application.StatusBar = "该多边形的面积为:" & s & vbCrLf & vbCrLf & "周长为:" & p
End Sub

TA的精华主题

TA的得分主题

发表于 2016-2-22 15:11 | 显示全部楼层
northwolves 发表于 2006-8-2 12:30
我的解法:结果差了一点点,VBA编辑得很好。谢谢snood点评狂晕。冤死了,括号括错位置了,白丢了分:Private ...

请问这个面积公式的原理是什么呢?

TA的精华主题

TA的得分主题

发表于 2016-2-22 19:43 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-21 16:53 , Processed in 0.038308 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表