yilan 发表于 2023-5-18 09:27

麻烦老铁们帮忙看下这个出货单

麻烦老铁们,里面当时有个要求是2-3cm范围内的,就是5棕折成1床,但是像遇到2.5cm或是2.8cm的,为什么是2棕拆成1床的?麻烦老师们看一下,这代码要怎么重新改。这表格是以前的人设计在用的,但是现在有了这些不是整数的,像这个2.5cm 2.8cm之类的,就折算不对了。我看了一下代码,应该是对应下面这一条的。“单位为棕,D列这里含有2-3cm等字眼的,数量/5”    这里描述应该是错误的,应该是2-3这个范围的,就是除5的

砂海 发表于 2023-5-18 11:46

本帖最后由 砂海 于 2023-5-18 12:09 编辑

2.5cm3E棕3cm3E棕


如果cm左侧必定是合法数字(厚度)的话 , 建议直接提取 厚度来运算

Sub 折算打折()
    For x = 6 To 21
      s = Cells(x, 4).Value
      m = 0: n = 0: h = 0: t = 0: 厚度 = 0: 标识 = 0
      If Cells(x, 7) Like "*棕*" Then
            标识 = InStr(s, "cm")
            If 标识 > 1 Then
                厚度 = Left(s, 标识 - 1)

'...
''======================================================
刚才 s 写错, 成Cells(x, 7),,
看上去, 还有更大的问题,
按照当前的结构, 算是有【单据】,没有【总表】,后续统计工作很麻烦

yilan 发表于 2023-5-18 13:42

砂海 发表于 2023-5-18 11:46
2.5cm3E棕3cm3E棕




老师,cm前面必定是数字的。像3,12或是2.8,11.8这样的数字的
但是这个表里面有很多其它条件和要求的,如果用老师这个代码,能满足原来的那些要求吗?因为现在就是这个2-3cm范围内的,数量5折成1这个条件,如果数值是2.5或2.8这些都没有办法5折1

yilan 发表于 2023-5-19 08:27

有没有老师帮忙看一下的
页: [1]
查看完整版本: 麻烦老铁们帮忙看下这个出货单