Jeg kan se jeg har rodet mig ud i et spørgsmål, der for mig sikkert ikke bliver let at løse..... Jeg er i hvertfald nødt til at vente med forsøget til jeg har god tid. Det bliver her iløbet af juleferien.
Her er noget du kan arbejde videre på. Beregningen af xy koordinaterne mangler. Der skal du nok ha hjælp af en anden.
Sub Tegn() ' Tegner og navngiver scrollbar, cirkel og streger ' Skal selvfølgelig kun bruges en gang Dim OLE As OLEObject ActiveSheet.Shapes.AddShape(msoShapeOval, 100, 100, 400, 400).Select Selection.Name = "Cirkel" ActiveSheet.Shapes.AddLine(300, 300, 300, 100).Select Selection.Name = "SortLinje" Selection.ShapeRange.Line.ForeColor.SchemeColor = 0 ActiveSheet.Shapes.AddLine(300, 300, 300, 100).Select Selection.Name = "BlaaLinje" Selection.ShapeRange.Line.ForeColor.SchemeColor = 12 Set OLE = ActiveSheet.OLEObjects.Add(ClassType:="Forms.ScrollBar.1", _ Left:=200, Top:=50, Width:=200, Height:=20) With OLE .Object.Min = 0 .Object.Max = 360 .Name = "ScrollBar" End With End Sub
Private Sub ScrollBar_Change() ' Tegner en ny blå streg med den rigtige vinkel ' hver gang scrollbaren ændres Dim Vinkel As Long Dim ex As Long Dim ey As Long Vinkel = Me.ScrollBar
'********************************************** ' Select case skal udskiftes med et regnestykke ' der beregner xy korordinaterne
Select Case Vinkel Case 315 To 45 ex = 300 ey = 100 Case 45 To 135 ex = 500 ey = 300 Case 135 To 225 ex = 300 ey = 500 Case 225 To 315 ex = 100 ey = 300 End Select
'***********************************************
ActiveSheet.Shapes("BlaaLinje").Delete ActiveSheet.Shapes.AddLine(300, 300, ex, ey).Select Selection.Name = "BlaaLinje" Selection.ShapeRange.Line.ForeColor.SchemeColor = 12 End Sub
Private Sub ScrollBar_Change() ' Tegner en ny blå streg med den rigtige vinkel Const Pi As Variant = 3.14159265358979 Dim ex As Variant Dim ey As Variant ex = Sin(Me.ScrollBar * (Pi / 180)) * 200 + 300 ey = Cos((180 - Me.ScrollBar) * (Pi / 180)) * 200 + 300 ActiveSheet.Shapes("BlaaLinje").Delete ActiveSheet.Shapes.AddLine(300, 300, ex, ey).Select Selection.Name = "BlaaLinje" Selection.ShapeRange.Line.ForeColor.SchemeColor = 12 End Sub
epimetheus. Læg et svar så er pointene dine - jeg må dog indrømme at jeg ikke er kommet videre med opgaven. Er ikke sikker på jeg kan og har ikke tid til at forsøge lige for tiden. Men har nu noget at gå videre med på et senere tidspunkt.
epimetheus --> Må jeg have lov at rose din løsning, simple og effektiv. Der er dog en enkel fejl, i din download fil, cirkelen er forskudt i forhold til vinkelen. (men det passer dog, hvis man sletter cirkelen og kører tegn igen). Det var bare til orientering :o)
Okay, så er jeg nødt til at lukke uden at "betale" point for det.
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.