我正在查找能夠通過列A(時間)並創建一個新的行,其中每個整數都應該是一個Excel宏。在創建新行之後,需要爲該新行插入列D和E的值。該行也應該突出顯示。最後,所有突出顯示的行應該隱藏(這可以通過按單元格顏色過濾來完成)。Excel:創建新行並插入
我想提出的最大問題是何時插入新行,因爲它們之間的行數不總是相同的。我想過比較相鄰行中的單元格,但我不確定如何執行此操作。
下面是一張圖片來幫助解釋我需要什麼。 (減去隱藏的行)Image Example
我正在查找能夠通過列A(時間)並創建一個新的行,其中每個整數都應該是一個Excel宏。在創建新行之後,需要爲該新行插入列D和E的值。該行也應該突出顯示。最後,所有突出顯示的行應該隱藏(這可以通過按單元格顏色過濾來完成)。Excel:創建新行並插入
我想提出的最大問題是何時插入新行,因爲它們之間的行數不總是相同的。我想過比較相鄰行中的單元格,但我不確定如何執行此操作。
下面是一張圖片來幫助解釋我需要什麼。 (減去隱藏的行)Image Example
這裏是你的「最大問題」的代碼....我不知道你想要的「插值」的部分是什麼數學:
Sub Insert_whole_Number_row()
C = 1
R = ActiveCell.Row
If Cells(R, C) = "" Then Exit Sub
Do Until Cells(R, C) = ""
If Int(Cells(R, C)) <> Int(Cells(R + 1, C)) Then
Rows(R + C).Insert
R = R + 1
Cells(R, C) = Int(Cells(R + 1, C))
Range(Cells(R, C), Cells(R, C + 5)).Interior.ColorIndex = 6
End If
R = R + 1
Loop
MsgBox "Done...."
End Sub
謝謝Mike!如果時間數據已經是整數,我添加了ElseIf以不創建新行。插值應該採用y = y1 +(x-x1)*((y2-y1)/ x2-x1))的形式。在第一篇文章的照片中,它顯示爲選定的單元格。 我嘗試使用Range.Formula和Range.FormulaR1C1來做到這一點。寫出公式時,我無法找到如何引用某個單元格。 – Spencer
'如果INT(.cells(I, 「A」)。值2)<> INT(.cells第(i + 1, 「A」)。值2)然後' – Jeeped
我完全用三次樣條完成了這個。太複雜的解決方案。嘗試使用'VLOOKUP()'和'FORECAST()'來做你想做的事。 – ja72