我有一个包含a
到ae
的100个Nos的转换批次作为变体。我需要将a
计为b
转换& a
到c
转换,同上到a
到ae
并复制结果&粘贴到另一个a
到b
关系的单元格中。
由Tony Dallimore编辑。这是您的数据的样子:
----- Columns -----
Row L M N O P Q R S T U
11 b e h k c b e h k c
12 b e h k f b e h k f
13 b e h k i a d g j i
14 b e h k b a d g j e
15 b e h k c b e h k c
16 b e h k f b e h k f
17 b e h k i a d g j i
18 b e h k c a d g j c
19 b e h k f b e h k f
20 b e h k i b e h k i
这是excel中的正确表格。
从上表中,我创建了另一个表,如下所示,
V W X Y Z AA AB AC AD AE
58 SUM reference changes a d 4
59
60 0 0 0 0 0 0 0 0 0 0
61 0 0 0 0 0 0 0 0 0 0
62 0 0 0 0 0 0 1 0 0 0
63 0 0 0 0 0 0 1 0 0 0
64 0 0 0 0 0 0 0 0 0 0
65 0 0 0 0 0 0 0 0 0 0
66 0 0 0 0 0 0 1 0 0 0
67 0 0 0 0 0 0 1 0 0 0
68 0 0 0 0 0 0 0 0 0 0
69 0 0 0 0 0 0 0 0 0 0
AE58
=SUM(V60:AE69)
V60
=IF(OR(L11&U20=$AC$58&$AD$58,L11&U20=$AD$58&$AC$58),1,0)
AE69
=IF(OR(U20&T20=$AC$58&$AD$58,U20&T20=$AD$58&$AC$58),1,0)
我正在从AC58
和a
从AD58
手动更改b
到k
。然后我将AE58
逐个复制到另一张桌子。然后,我将AC58
更改为b
,将AD58
从c
更改为k
。目前我正在手动完成。下面是我粘贴数据的表格。
AG AH AI AJ AK AL AM AN AO AP AQ AR
10 a b c d e f g h i j k
11 a
12 b 1
13 c 1
14 d 4
15 e
16 f
17 g
18 h
19 i
20 j
21 k
很抱歉这个混乱。我没有正确地说出我的问题。我无法附上excel表。
**手动计算&更新答案表**
AG AH AI AJ AK AL AM AN AO AP AQ AR
10 a b c d e f g h i j k
11 a
12 b 1
13 c 1 5
14 d 4
15 e 17
16 f 6
17 g 4
18 h 16
19 i 2 4
20 j 1 1 4 2
21 k 1 5 6 16 4
从评论中复制:
我记录的Macro的一部分我正在尝试做什么,
Sub Macro2()
'
' Macro2 Macro
'
'
Range("AC58").Select
ActiveCell.FormulaR1C1 = "a"
Range("AD58").Select
ActiveCell.FormulaR1C1 = "b"
Range("AE58").Select
Selection.Copy
Range("AH12").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("AD58").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "c"
Range("AE58").Select
Selection.Copy
Range("AH13").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("AD58").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "d"
Range("AE58").Select
Selection.Copy
Range("AH14").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "e"
Range("AE58").Select
Selection.Copy
Range("AH15").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "f"
Range("AE58").Select
Selection.Copy
Range("AH16").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "g"
Range("AE58").Select
Selection.Copy
Range("AH17").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
以上代码我在工作时手动录制。仅供参考粘贴相同。
答案 0 :(得分:0)
100个连续班次列表中的班次组合计数
此答案是对提问者的修订要求的解决方案。
我发布了这个答案,因为提问者改变了原来的要求,因此需要一个与第一个发布不同的解决方案。我决定留下这两种解决方案,以便其他用户可能面临任何这些情况。
要求:从a
到k
有11个班次,每个班次都有100个回合的列表。目标是计算列表中有多少班次组合,即班次从a
更改为b
和 {{ 1}}到b
,a
到a
和 c
到c
,... a
到{{ 1}} 和 j
到k
。移位是连续的,即k
是j
的延续,Row 2
是Row 1
的延续。
假设:轮班列表位于Cell 1
范围内,结果公布范围Cell 100
(根据需要更改)
以下代码生成所需的 Shift组合数,另外还有 Shifts Turns 的计数(参见图1)
有兴趣深入了解代码中使用的资源的用户可以访问以下页面:
Variables & Constants,Excel Objects,With Statement,
For...Next Statement,For Each...Next Statement,GoSub...Return Statement,
Split Function,Custom Number Format,Range Properties (Excel)
我还在代码中包含了一些注释,指出了其中每个段的用途。不过,请告诉我有关代码及其中使用的资源的任何问题。快乐阅读!!!
L11:U21
希望你觉得这个答案很有用,即使你现在还有一些你不太了解的东西,希望这些新东西会激发你的兴趣,好奇心并激励你更多地了解编程。
答案 1 :(得分:-1)
100个连续班次列表中的班次转换次数
此答案是对提问者的原始要求的解决方案。
要求:从a
到k
有11个班次,每个班次都有100个回合的列表。目标是计算在他们之间发生转换的次数即,转换次数从a
更改为b
,a
到{{ 1}},... c
到j
。移位是连续的,即k
是Row 2
的延续,Row 1
是Cell 1
的延续。
假设:班次列表位于Cell 100
范围内,结果在范围L11:U21
中发布(根据需要更改) < / p>
以下代码生成所需的 Shift转换计数,另外还有 Shifts Turn 的计数(参见图1)
有兴趣深入了解代码中使用的资源的用户可以访问以下页面:
Variables & Constants,Excel Objects,With Statement,
For...Next Statement,For Each...Next Statement,GoSub...Return Statement,
Split Function,Custom Number Format,Range Properties (Excel)
我还在代码中包含了一些注释,指出了其中每个段的用途。不过,请告诉我有关代码及其中使用的资源的任何问题。快乐阅读!!!
AG10:AS22
希望你觉得这个答案很有用,即使你现在还有一些你不太了解的东西,希望这些新东西会激发你的兴趣,好奇心并激励你更多地了解编程。