开元周游
德国频道
楼主: hubeck
打印 上一主题 下一主题

想成立一个Excel联盟,大家有没有兴趣?

[复制链接]
21#
 楼主| 发表于 13.8.2008 12:47:38 | 只看该作者
即时机票
楼上的问题说的不是太清楚,我先按照我的猜测说一下 + t+ r0 Y" V6 Y4 W" D2 m; C : X/ @1 z$ z! l/ c: W1,你说的分数形式是不是类似4/5这种没计算出结果的文本格式?如果是的话可以用Mid(中文或者英文Excel)或者teil(德文版Excel)公式取得分子和分母,然后计算就行了,估计用时两分钟。 ) s( Z+ C" p0 O+ Z' w 6 }2 ^3 {9 M2 I( v! z+ K8 o1 i2,如果我理解正确的话,这个貌似不用程序。第一行是你的48个数字,下一行求他们的平方根,然后随便什么地方sum一下就行了吧?还是你们要求一定要用VBA写点儿什么?
回复 支持 反对

使用道具 举报

22#
发表于 13.8.2008 13:51:20 | 只看该作者
感谢您的及时回复,您对我的问题的理解完全正确,您说的mid是啥,我咋不会操作呢,) F- M% j) @/ o+ A( w6 b: [2 O2 X 关于第二个问题您的回答我已理解,我想最好还是在一行里用个命令解决,谢谢您!
回复 支持 反对

使用道具 举报

23#
 楼主| 发表于 13.8.2008 19:58:55 | 只看该作者
mid是一个公式,点插入公式,搜索mid,不会用的话就点F1看帮助。 0 D9 g9 J9 i2 Y- n3 E5 [3 j4 x* l$ Y; r% W 第二个问题你一定要在一行内解决的话,可以找个单元格敲等于号,然后老老实实的写公式,或者也可以用宏,如果以后这个操作要重复,但也工作量也差不多。还是建议原来的答案。
回复 支持 反对

使用道具 举报

24#
发表于 13.8.2008 21:39:18 | 只看该作者
'第二个问题的答案8 J o8 y M5 O2 Y. E0 ?" l '计算平方根,然后求和 1 G3 o; x. Q* I- O0 wSub aaa() ( W' e ?) v1 ?0 l4 Z% B0 x Dim i As Long. s4 q, b H! v9 ~9 s( a2 \' f Dim Sht As Worksheet : L; A7 _1 y' c+ n. P2 X Dim SqrResult As Double 6 P$ x$ Z# z8 V( [* o Set Sht = ThisWorkbook.ActiveSheet 5 ]4 S- R Y1 _7 U! r/ c$ s SqrResult = 0 ; ? J/ G% W I5 M. c For i = 1 To 48 ; y$ r7 ], N( i" V/ Z' v2 E) e! \ SqrResult = SqrResult + Sqr(Sht.Cells(1, i))" N6 ^% _2 a: W9 b Next i6 B" n, R" M% \ Sht.Cells(1, 49) = SqrResult '将结果写入第一行的第49列 ) N0 ^# R9 J8 c. S/ g$ i( a# KEnd Sub
回复 支持 反对

使用道具 举报

25#
发表于 13.8.2008 22:06:14 | 只看该作者
'第一个问题的解决方法,写一个循环,对每个单元格进行操作,比如说处理范围是: 100*100, 如下: . i) V1 h8 a( ^- _ k* Q3 l8 JSub bbb()& N' f4 y. j$ W Dim i As Long, ii As Long, curStr As String, pos As Long, curValue As Double% l' I& b5 R7 r6 \9 v5 O( ~ Dim Sht As Worksheet 8 @4 f; d2 ^% p: ^" B' j) o , b& \! n, y1 Y% H( D1 ?1 N Set Sht = ThisWorkbook.ActiveSheet ! O% v5 g$ i3 \' P6 q For i = 1 To 100/ a$ `9 z8 h& |& l5 \! H: F$ V For ii = 1 To 1001 {* i7 A& j0 {2 W# F curStr = Sht.Cells(i, ii) * N& d. T0 d# {3 k( P& l0 Q( R R If Len(curStr) > 0 Then1 p" I6 S8 H: G; O) X: R6 X, s0 F } pos = InStr(curStr, "/"), G6 b4 \, R! f6 L7 H9 |+ L' H6 Q If pos > 0 Then: T2 s, Q3 \( g( c, u1 d" l F3 ? curValue = CDbl(Left$(curStr, pos - 1)) / Right$(curStr, Len(curStr) - pos)/ o6 K6 V3 x1 [) [+ r" Z% p5 Y% p5 h Sht.Cells(i, ii) = curValue + `( U) ^8 u. y& ] End If( P: `0 [ {2 u* b# b: B End If3 [) `% m& T( ?2 M9 M$ q6 H% ` Next ii ; W5 r( O/ P# V( g C/ ~ o6 V Next i * k9 `0 W+ E1 ^# h C. GEnd Sub 1 n. [8 [" F, M5 i1 a% _+ T$ M 不怎么会用excel, 所以代码可能麻烦了,如果哪位高人有更简单的转换方法,欢迎赐教。/ V* N g( f# g- s- a 2 ^( h' p7 v5 v+ l: q5 V4 g" G[ 本帖最后由 kangson 于 13.8.2008 23:13 编辑 ]
回复 支持 反对

使用道具 举报

26#
发表于 13.8.2008 22:06:52 | 只看该作者
回复 支持 反对

使用道具 举报

27#
发表于 13.8.2008 22:26:49 | 只看该作者
好感动呀,大家这么热心!由衷感谢!我的是中文版的,楼上写的我看不懂呀,我不怎么会德语!
回复 支持 反对

使用道具 举报

28#
发表于 13.8.2008 22:28:44 | 只看该作者
回复 支持 反对

使用道具 举报

29#
发表于 13.8.2008 22:45:29 | 只看该作者
代码对任何版本都适用。& A2 L3 J: @# j1 }. b 另外, 除了·viel spass·这两个跟问题无关的词以外,我没有写任何德语阿 ' R' c* }+ ]8 i4 S) @- i* Y$ C( r5 e" I3 T7 _ [ 本帖最后由 kangson 于 13.8.2008 23:47 编辑 ]
回复 支持 反对

使用道具 举报

30#
发表于 14.8.2008 05:40:57 | 只看该作者
再次感谢hubeck和kangson!好人好报!4 f/ q5 R0 O" C+ } 昨晚仔细研读二位的指点,发现以下问题,关于问题1,我的意思是上百个单元格的分数变成数值,我现在的做法是一个个弄等号,然后得出,我找到了mid,虽然没有成功运用,但我想楼上还是以为我要把一个单元格的文本变成数值,我的意思是上千个文本,也许我没把mid就是干这个的,我研究了半天感觉好像不是,请赐教! 4 \: d! B1 l5 G6 i8 a, F关于问题2,我试了SUM(SQRT(A1):SQRT(Z1))不好用,我想肯定是我的书写有问题,也许就这样一个简单命令,就可以在一行中解决?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点信息

站点统计| 举报| Archiver| 手机版| 小黑屋

Powered by Discuz! X3.2 © 2001-2014 Comsenz Inc.

GMT+1, 18.2.2025 23:10

关于我们|Apps

() 开元网

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