28. februar 2006 - 14:09Der er
6 kommentarer og 1 løsning
Opsplitte formel i elementer
Jeg har en formel, som f.eks. hedder:
=+Ark2!B3+Ark3!B4+Ark3!C13-Ark3!C25 værdien heraf er 113.
Jeg kunne godt tænke mig en makro, som gør følgende:
- curseren står i cellen med formelen, når jeg starter makroen:
I et nyt regneark skal den vise elementerne i formlen således: Element værdi =+Ark2!B3+Ark3!B4+Ark3!C13-Ark3!C25 113 +Ark2!B3 10 +Ark3!B4 13 +Ark3!C13 500 -Ark3!C25 -410
I princippet skal den opdele formlen i et element for hver gang et af de fire regneelementer optræder +-* eller /
Sub opdel() Dim f, lgd, rk, count, flag As Boolean rk = 3 flag = True f = 1
formel = Mid(Cells(1, 1).Formula, 2)
While formel <> "" If InStr("+-*/", Mid(formel, f, 1)) > 0 Then If flag = True Then flag = False Else Cells(rk, 1) = "'" + Mid(formel, 1, f - 1) Cells(rk, 2) = "=" + Mid(formel, 1, f - 1)
formel = Mid(formel, f) rk = rk + 1 f = 1 End If End If f = f + 1 Wend
kan man lave det således, at man står i for eksempel regneark XY, ark2, celle G5 - herefter opretter makroen et nyt regneark og kopiere formlen over i ark1 celle A1 - med de oprindelige referencer - inden ovenstående makro kører ?
formel = Mid(formel, f) rk = rk + 1 f = 1 End If End If f = f + 1 Wend
Application.Goto Reference:="R1000C1" End Sub
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.