Vytisknout stránku | Zavřít okno

iLogic formaty listov

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: Inventor
Popis fóra: Otázky k programům Autodesk Inventor Professional, Product Design & Manufacturing Collection, Factory Design; digitální prototypy
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=23961
Datum vytištění: 07.čer.2026 v 20:03


Téma: iLogic formaty listov
Odeslal: DM1
Předmět: iLogic formaty listov
Datum odeslání: 26.úno.2017 v 16:56
Dobry den, potreboval by som poradit s vytvorenim pravidla pre zmenu formatu vykresoveho listu ( na odporucanie zo starej temy som to riesil cez iLogic) a vyzera to asi takto : 

trigger = iTrigger0

Vyber_formatu = InputListBox("Formaty", MultiValue.List("Vyber_formatu"), Vyber_formatu, Title := "Formaty", ListName := "Vyber")



If Vyber_formatu = "OramA0" Then
ActiveSheet.ChangeSize("A0", MoveBorderItems := True)
ActiveSheet.Border = "OramA0"
ElseIf Vyber_formatu = "OramA1" Then ActiveSheet.ChangeSize("A1", MoveBorderItems := True) ActiveSheet.Border = "OramA1"
ElseIf Vyber_formatu = "OramA2" Then
ActiveSheet.ChangeSize("A2", MoveBorderItems := True) ActiveSheet.Border = "OramA2"


ElseIf Vyber_formatu = "OramA3" Then
ActiveSheet.ChangeSize("A3", MoveBorderItems := True) ActiveSheet.Border = "OramA3"
ElseIf Vyber_formatu = "OramA4" Then
ActiveSheet.ChangeSize("A4", MoveBorderItems := True) ActiveSheet.Border = "OramA4"
End If




Je to aj funkcne no potrebujem tam pridat aj podmienku pre zmenu orientacie listu kedze mi ho stale zobrazuje na vysku, a tuto funkciu neviem najst. Vopred dakujem.






Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 26.úno.2017 v 18:13
Viz vlastnost Orientation a kompletní iLogic kód v příbuzném tipu 9798.

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz emea.support.arkance.world)


Odeslal: raspi
Datum odeslání: 27.úno.2017 v 07:04
Takto to mám já.


oMyParameter=ThisApplication.ActiveDocument.Parameters.UserParameters
Try
Parameter("FORMAT") = Parameter("FORMAT")
Catch
oParameter = oMyParameter.AddByValue("FORMAT", "A3", UnitsTypeEnum.kTextUnits)
MultiValue.SetList("FORMAT", "A0", "A1", "A2", "A3", "A4")
End Try
Parameter("FORMAT") = InputListBox("Zvolte formát výkresu.", MultiValue.List("FORMAT"), Parameter("FORMAT"), Title := "Formát výkresu", ListName := "Vyberte formát:")
ActiveSheet.ChangeSize(Parameter("FORMAT"),MoveBorderItems := True)
RuleParametersOutput()
InventorVb.DocumentUpdate()
If Parameter("FORMAT") = "A4" Then
ThisApplication.ActiveDocument.ActiveSheet.Orientation = 10243 'Portrait
Else
ThisApplication.ActiveDocument.ActiveSheet.Orientation = 10242 'Landscape
End If
ThisApplication.ActiveView.Fit    'tento poslední řádek udělá na zoom vše

If Parameter("FORMAT") = "A4" Then
ActiveSheet.Border = "A4"
End If

If Parameter("FORMAT") = "A3" Then
ActiveSheet.Border = "A3"
End If

If Parameter("FORMAT") = "A2" Then
ActiveSheet.Border = "A2"
End If

If Parameter("FORMAT") = "A1" Then
ActiveSheet.Border = "A1"
End If

If Parameter("FORMAT") = "A0" Then
ActiveSheet.Border = "A0"
End If



Odeslal: DM1
Datum odeslání: 04.bře.2017 v 19:33
Dakujem, vyskusam. VIP niesom.


Odeslal: DM1
Datum odeslání: 04.bře.2017 v 20:59
Takze som sa pokusil to nejak kombinovat a vysledok je takyto : 

trigger = iTrigger0

Vyber_formatu = InputListBox("Formaty", MultiValue.List("Vyber_formatu"), Vyber_formatu, Title := "Formaty", ListName := "Vyber")


If Parameter("Vyber_formatu") = "A4" Then
ThisApplication.ActiveDocument.ActiveSheet.Orientation = 10243 
Else
ThisApplication.ActiveDocument.ActiveSheet.Orientation = 10242 
End If
ThisApplication.ActiveView.Fit   


If Vyber_formatu = "Oram A0" Then
ActiveSheet.ChangeSize("A0", MoveBorderItems := True)
ActiveSheet.Border = "Oram A0"
ElseIf Vyber_formatu = "Oram A1" Then
ActiveSheet.ChangeSize("A1", MoveBorderItems := True) ActiveSheet.Border = "Oram A1"
ElseIf Vyber_formatu = "Oram A2" Then
ActiveSheet.ChangeSize("A2", MoveBorderItems := True) ActiveSheet.Border = "Oram A2"
ElseIf Vyber_formatu = "Oram A3" Then
ActiveSheet.ChangeSize("A3", MoveBorderItems := True) ActiveSheet.Border = "Oram A3"
ElseIf Vyber_formatu = "Oram A4" Then
ActiveSheet.ChangeSize("A4", MoveBorderItems := True) ActiveSheet.Border = "Oram A4"
End If
Problem nastava teraz pri formate A4 pri ktorom mi to vyhodi chybu:
Nesprávny parameter. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))

Edit: 
Pouzil som cely Vas kod a funguje to lepsie takze dakujem!



Vytisknout stránku | Zavřít okno