如何使用VBA获取多行中列出的不同类型对象的值的STDEV?

雷伊·泰伊诺(Rey Taino)

我正在寻找一种方法来计算同一物料代码(数字)不同时间段的总和和标准差。它与excel中的小计功能非常相似,但是,与其将数字分组,创建新行并在同一列中插入小计-我想使用VBA自动执行此功能,并将小计放置在相邻的列或工作表中。我已经为小计记录了一个宏,但是,我需要在下一列中添加stdDev而不进行分组或破坏电子表格中的数据。我将需要此数据用于其他代码。

任何建议将不胜感激。谢谢

Sub stdDeviation(RN)

Dim FirstOccurrence As Long
Dim LastOccurrence As Long
Dim i As Integer

RN2 = RN
C = Sheets("CONETRAN").Cells(RN2, 2)
    Do Until Sheets("CONETRAN").Cells(RN2, 2) <> C
   RN2 = RN2 + 1

    Loop
RN2 = RN2 - 1

FirstOccurrence = RN
LastOccurrence = RN2

For i = 1 To LastOccurrence

Sheets("conedetail").Cells(RN, 16).Value = Application.WorksheetFunction.StDev(Range("J" & FirstOccurrence & ":J" & LastOccurrence))

Next

End Sub

在此处输入图片说明

在此处输入图片说明

那里的人

假设行B中有一个固定的数据块,$B$1:$B44931并且假设列B中的所有值都已排序,则可以使用以下方法来实现所需的功能:

  1. 查找第一次出现的物料编号的行号(编号)

     Dim FirstOccurrence As Long
    
     FirstOccurrence = Range("B:B").Find(What:="47-901-049W2", After:=[B1], SearchDirection:=xlNext).Row
    
  2. 查找最后一次出现的物料编号的行号(编号)

    Dim LastOccurrence As Long
    
    LastOccurrence = Range("B:B").Find(What:="47-901-049W2", After:=[B1], SearchDirection:=xlPrevious).Row
    
  3. 在使用前两点分配的范围上执行StDev操作,并写入所需的任何单元格

    Cells(1, 17).Value = Application.WorksheetFunction.StDev(Range("J" & FirstOccurrence & ":J" & LastOccurrence))
    

您可能需要将所有这些内容嵌套在一个循环中,以便继续在最后计算的StDev下面进行编写,并循环浏览所有项目代码。

为了使您的生活更轻松,我建议添加一个新列,复制B列中的所有值。选择所有新复制的单元格,单击“数据”选项卡->“删除重复项”。现在,在中使用此单元格范围For Loop来运行搜索。

更新:

好的,因此您的代码是一次不错的尝试,但是有一些错误。主要两件事是:

  1. 您需要创建一个处理If Statement第一个数据点的条件处理程序()。由于您是从“ B1”开始的,因此首先FirstOccurrence需要为B2-1 = B1

  2. 您需要创建一个条件处理程序(If Statement),以处理只有一个数据点的实例(即,当起点和终点都引用同一行时)。

试试下面的代码:

Sub stdDeviation()

Dim FirstOccurrence As Long
Dim LastOccurence As Long
Dim RN As Range
Dim workingRange As Range
Dim UniqueRange As Range
Dim i As Long


Set workingRange = Sheets("conedetail").Range("B1:B49999")
Set UniqueRange = Sheets("conedetail").Range("G1:G5")   'Insert the location of the extra column you created with all unique item codes

i = 1   'This sets up your writing position

'This loops throug all the unique item numbers and retrieves and calculates the necessary data
For Each RN In UniqueRange
    'Need to place a control factor in for the very first set of data
    If RN.Row = 1 Then
        FirstOccurrence = workingRange.Find(What:=RN.Text, After:=[B1], SearchDirection:=xlNext).Row - 1
    Else
        FirstOccurrence = workingRange.Find(What:=RN.Text, After:=[B1], SearchDirection:=xlNext).Row
    End If
    LastOccurence = workingRange.Find(What:=RN.Text, After:=[B1], SearchDirection:=xlPrevious).Row

    'Tests to see if only one occurrence, if no calculates stDev normally
    If LastOccurence - FirstOccurrence = 0 Then
        'Insert whatever you want it to do here if there is only one data point
        Sheets("conedetail").Cells(i, 16).Value = 0
    Else
        Sheets("conedetail").Cells(i, 16).Value = Application.WorksheetFunction.StDev(Range("J" & FirstOccurrence & ":J" & LastOccurence))
    End If
    i = i + 1
Next RN


Set RN = Nothing
Set workingRange = Nothing
Set UniqueRange = Nothing
End Sub

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

数组中不同类型的对象并获取每个对象的类型

来自分类Dev

如何使用 Android 发送包含不同类型数据的对象,包括 Firebase 中的某些 ArrayList?

来自分类Dev

如何从 Map 中获取不同类型的元素

来自分类Dev

如何使用SPARQL查询列出和计算图形数据中不同类型的节点和边实体?

来自分类Dev

如何使用SPARQL查询列出和计算图形数据中不同类型的节点和边实体?

来自分类Dev

Groovy中的ArrayList如何容纳不同类型的值?

来自分类Dev

我如何使用googlesheet中的xmlimport函数从具有相同类名的DIV获取不同的值?

来自分类Dev

与c中不同类型的对象堆叠

来自分类Dev

如何在Typescript中正确定义具有不同类型的值的对象

来自分类Dev

KDB+:如何使用不同类型的另一个值更新表中的值

来自分类Dev

如何使用泛型类型获取具有相同类型的对象

来自分类Dev

如何在C#中的单个对象数组中访问不同类型的类

来自分类Dev

如何从JPA中的持久性异常中获取不同类型的错误?

来自分类Dev

生成不同类型的对象

来自分类Dev

排序不同类型的对象

来自分类Dev

如何在容器中存储不同类型的模板化对象?

来自分类Dev

如何在容器中存储不同类型的模板化对象?

来自分类Dev

[Java]如何将对象的ArrayList中的内容设置为不同类型的变量?

来自分类Dev

如何在JAX-RS Jersey Restful Web服务中通过一次调用获取不同类型的JSON对象

来自分类Dev

如何在打字稿中使用不同类型的通用键键入对象

来自分类Dev

如何在一个列表中为不同类型的值设计工厂模式?

来自分类Dev

如何将地图值放入不同类型的列表中?

来自分类Dev

如何从多个不同类型的字符串列表中获得所需的值

来自分类Dev

在Haskell中,如何解码可能为两种不同类型的JSON值?

来自分类Dev

如何将不同类型的值添加到arraylist <object>中?

来自分类Dev

如何在Haskell中使用不同类型monad的值

来自分类Dev

SQL将不同类型的对象存储在单个表中

来自分类Dev

SwiftUI从数组中返回不同类型的对象

来自分类Dev

如何在Javascript数组中获取所有相同类型的对象?

Related 相关文章

  1. 1

    数组中不同类型的对象并获取每个对象的类型

  2. 2

    如何使用 Android 发送包含不同类型数据的对象,包括 Firebase 中的某些 ArrayList?

  3. 3

    如何从 Map 中获取不同类型的元素

  4. 4

    如何使用SPARQL查询列出和计算图形数据中不同类型的节点和边实体?

  5. 5

    如何使用SPARQL查询列出和计算图形数据中不同类型的节点和边实体?

  6. 6

    Groovy中的ArrayList如何容纳不同类型的值?

  7. 7

    我如何使用googlesheet中的xmlimport函数从具有相同类名的DIV获取不同的值?

  8. 8

    与c中不同类型的对象堆叠

  9. 9

    如何在Typescript中正确定义具有不同类型的值的对象

  10. 10

    KDB+:如何使用不同类型的另一个值更新表中的值

  11. 11

    如何使用泛型类型获取具有相同类型的对象

  12. 12

    如何在C#中的单个对象数组中访问不同类型的类

  13. 13

    如何从JPA中的持久性异常中获取不同类型的错误?

  14. 14

    生成不同类型的对象

  15. 15

    排序不同类型的对象

  16. 16

    如何在容器中存储不同类型的模板化对象?

  17. 17

    如何在容器中存储不同类型的模板化对象?

  18. 18

    [Java]如何将对象的ArrayList中的内容设置为不同类型的变量?

  19. 19

    如何在JAX-RS Jersey Restful Web服务中通过一次调用获取不同类型的JSON对象

  20. 20

    如何在打字稿中使用不同类型的通用键键入对象

  21. 21

    如何在一个列表中为不同类型的值设计工厂模式?

  22. 22

    如何将地图值放入不同类型的列表中?

  23. 23

    如何从多个不同类型的字符串列表中获得所需的值

  24. 24

    在Haskell中,如何解码可能为两种不同类型的JSON值?

  25. 25

    如何将不同类型的值添加到arraylist <object>中?

  26. 26

    如何在Haskell中使用不同类型monad的值

  27. 27

    SQL将不同类型的对象存储在单个表中

  28. 28

    SwiftUI从数组中返回不同类型的对象

  29. 29

    如何在Javascript数组中获取所有相同类型的对象?

热门标签

归档