• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Lijnen tekenen in excel

Status
Niet open voor verdere reacties.

kingswooder

Gebruiker
Lid geworden
5 jan 2011
Berichten
38
Beste Forumleden,

ik ben bezig met een digitale keuzematrix.
Wat ik wil is dat door het maken van een aantal keuzes er automatisch een lijn door de matrix gaat.

Nu heb ik het al zo ingesteld dat de lijn getekend wordt, echter krijg ik bepaalde functionaliteiten niet toegevoegd.
- Als er geen keuze wordt gemaakt, dan moet doorgesprongen worden naar de volgende systeemkeuze (nu wordt de lijn verbonden met het punt in de eerste kolom)
- Het kan voorkomen dat bij een bepaald systeem, meerdere (2) keuzes gemaakt worden. Bijvoorbeeld CV-ketel met douche-wtw. De lijn moet dan via deze 2 keuzes gaan.
- Als de lijn eenmaal getekend is, moet ik alle losse lijnstukken 1 voor 1 verwijderen. Is het mogelijk om deze automatisch te verwijderen op het moment dat een nieuwe lijn getekend wordt?
- tevens zou ik lijn 1 en lijn 2 in een andere kleur zien (en dikker)

Als laatste iets dat niet meteen met bovenstaand iets te maken heeft, maar ik heb nu besturingselementen toegevoegd om een keuze te kunnen maken.
Het probleem is dat ik hiervoor een verticale lijst voor nodig hebt. Ik heb nu een extra blad toegevoegd (blad 2).
Ik kopieer dan de waardes van Hulpblad en doe deze speciaal plakken: waardes + transponeren.
Dan verwijs ik voor de besturingselementen vervolgens naar blad 2.
Het mooiste zou zijn als de keuzelijst meteen gegenereerd zou worden.

Tevens heb ik voor bijvoorbeeld verwarming teveel systemen voor 1 rij, deze heb ik in 2 rijen gezet (anders wordt het blad te breed).
Ik zou wel alle systemen van verwarming in 1 lijst hebben staan.

In de bijlage het bestand met de status tot nu toe.

Hopelijk kan iemand me op weg helpen. Alvast bedankt voor de reactie,

gr Henri
 

Bijlagen

  • matrix 3.xlsm
    779,9 KB · Weergaven: 57
Als je lijnen tekent in werkblad Matrix kun je ook de code daarvoor in de codemodule van dat werkblad zetten.

Code:
With Sheets("Matrix")
      .Shapes.AddConnector(1, .Range("Z10"), .Range("AA10"), .Range("Z12"), .Range("AA12")).Name = "L_01"
      .Shapes.AddConnector(1, .Range("Z12"), .Range("AA12"), .Range("Z14"), .Range("AA14")).Name = "L_02"
      .Shapes.Range(Array("L_01", "L_02")).Delete
 End With

Door ze een eigen naam te geven kun je ze later weer gemakkelijk selecteren en selectief verwijderen:

Code:
Sheets("Matrix").shapes.range(array("L_01","L_02")).delete

En nog iets efficiënter:

Code:
Sub M_snb()
    With Sheets("Matrix")
          For j = 10 To 36 Step 2
            .Shapes.AddConnector(1, .Cells(j, 26), .Cells(j, 27), .Cells(j + 2, 26), .Cells(j + 2, 27)).Name = "L_" & j
          Next
    '      .Shapes.Range(Array("L_01", "L_02")).Delete
     End With
End Sub
 
Laatst bewerkt:
Ik begrijp wat je bedoelt, maar ik krijg het niet voor elkaar.

Je maakt een script voor het genereren van de lijnen, alleen hoe activeer ik die lijn dan.
Of kun je iets met lijn "aan" / "lijn" maken.

Ik heb nu 2 knoppen: lijn maken en lijn verwijderen. Alleen het verwijderen lukt niet.
Ook de naam toewijzen in de macro lukt niet.

In de bijlage de laatste versie.

Is het ook mogelijk om de eigenschappen van de lijn te wijzigen? Dus dikkere lijn, andere kleur, dikke begin en eindpunt (zodat je ziet waar de lijn begint en eindigt).
 

Bijlagen

  • matrix 4.xlsm
    799,6 KB · Weergaven: 41
In de bijlage de laatste versie.

Wat ik niet voor elkaar krijg is:
- lijnen laten verdwijnen (kan ook dat de lijn blijft staan en mee wijzigt)
- verschillende kleuren voor de lijnen
- dikkere lijn dan standaard
- lijn laten beginnen/eindigen met dikke punt, of pijl (dus in plaats van lijn pijl tekenen)

Kan iemand me helpen, of is hetgeen ik wil niet mogelijk?
 

Bijlagen

  • matrix 5.xlsm
    799,5 KB · Weergaven: 29
ben weer iets verder, maar nog niet helemaal.

Ik heb nu 2 knoppen toegevoegd voor het tekenen en verwijderen van de lijnen.

Nu krijg ik steeds een foutmelding omdat de de benaming van de lijn niet gevonden wordt (denk ik).
dit komt omdat sommige lijnen niet getekend worden.
Dus ik moet eigenlijk iets hebben waardoor de namen van de lijnen gegenereerd wordt op basis van de namen welke eerder zijn toegekend.

dan heb ik geprobeerd om een rode lijn met pijl te krijgen. In de macro lukt dit wel, maar in de VBA code niet.
 

Bijlagen

  • matrix 7.xlsm
    808,6 KB · Weergaven: 30
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan