SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Bij macro's die een bepaalde, merkbare, tijd nodig hebben om hun werk te doen is het van belang de gebruiker een idee te geven van wat er gebeurt, zeker met macro-optimalisatie aan kan het lijken alsof Excel is vastgelopen. Je kan bijvoorbeeld de statusbar een waarde geven, met eventueel een percentage van de reeds uitgevoerde code.SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.Verder
Alle vorige topics zijn hier terug te vinden.
Nieuw topic? Haal de OP uit de wiki
[ Bericht 28% gewijzigd door qu63 op 30-01-2012 15:01:43 ]It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
Oh, helemaal overheen gelezen .quote:Op vrijdag 27 januari 2012 15:37 schreef qu63 het volgende:
[..]
Ik weet niet of dat ook werkt met je grafieklijn..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | Sub PosNegChart() Dim i As Integer Dim j As Integer Dim x As Range Dim y As Range Dim xnew() As Double Dim ynew() As Double 'User input x en y waarden Set x = Application.InputBox("Kies range X-as", "FOK! Excel Help", , , , , , 8) Set y = Application.InputBox("Kies range Y-as", "FOK! Excel Help", , , , , , 8) ReDim xnew(0) ReDim ynew(0) For i = 1 To x.Rows.Count 'Arrays uitbreiden ReDim Preserve xnew(UBound(xnew) + 1) ReDim Preserve ynew(UBound(ynew) + 1) 'x en y waarden aan nieuw array toevoegen xnew(UBound(xnew)) = x(i, 1) ynew(UBound(ynew)) = y(i, 1) 'Bekende (x1,y1) en (x2,y2) voor bepaling 'Richtingscoëfficient en B uit y = ax + b A1 = x(i, 1) B1 = y(i, 1) A2 = x(i + 1, 1) B2 = y(i + 1, 1) 'berekening y = 0 (snijdpunt x-as) SP = -1 * (B2 - (A2 * (B2 - B1) / (A2 - A1))) / (B2 - B1) / (A2 - A1) 'test of snijden x-as plaatsvindt in deze verzameling If SP > A1 And SP < A2 Then 'uitbreiden nieuwe arrays en toevoegen y=0 snijpunten x as ReDim Preserve xnew(UBound(xnew) + 1) ReDim Preserve ynew(UBound(ynew) + 1) ynew(UBound(ynew)) = 0 xnew(UBound(xnew)) = SP End If Next 'actieve sheetnaam onthouden Dim Naam As String Naam = ActiveSheet.Name 'Geheime sheet aanmaken (eerst verwijderen) On Error Resume Next Application.DisplayAlerts = False Sheets("FOK").Delete Application.DisplayAlerts = True On Error GoTo 0 ActiveWorkbook.Sheets.Add ActiveSheet.Name = ("FOK") Sheets("FOK").Visible = False 'Nieuwe serie x en y waarden plaatsen in geheime sheet For i = 1 To UBound(xnew) Sheets("FOK").Cells(i, 1) = xnew(i) Sheets("FOK").Cells(i, 2) = ynew(i) Next 'Grafiek toevoegen Charts.Add ActiveChart.SeriesCollection.NewSeries ActiveChart.SeriesCollection(1).XValues = Sheets("FOK").Range(Sheets("FOK").Cells(LBound(xnew) + 1, 1), Sheets("FOK").Cells(UBound(xnew), 1)) ActiveChart.SeriesCollection(1).Values = Sheets("FOK").Range(Sheets("FOK").Cells(LBound(xnew) + 1, 2), Sheets("FOK").Cells(UBound(xnew), 2)) ActiveChart.ChartType = xlXYScatterSmoothNoMarkers ActiveChart.Location Where:=xlLocationAsObject, Name:=Naam For i = 1 To UBound(xnew) On Error Resume Next If ynew(i) <= 0 And ynew(i + 1) <= 0 Then ActiveChart.SeriesCollection(1).Points(i + 1).Border.ColorIndex = 3 End If Next ActiveChart.Legend.Delete End Sub |
1 2 3 4 | Dim x As Variant x = Range("A1:B4") MsgBox x(2,2) 'geeft waarde cell B2 Range("A12:B15") = x |
ok, dank je, ik zal het meenemen, ik dacht dat ik range moest gebruiken ivm met de input van user, ik had in het begin steeds fouten in de de uitvoering van code en kon niet vinden waar het lag. Uiteindelijk lag het niet aan de ranges maar heel ergens anders...quote:Op zondag 29 januari 2012 18:05 schreef ralfie het volgende:
@KritischeMassa
[ code verwijderd ]
Ranges kun je makkelijk converteren naar Variants, en omgekeerd. Gebruik is weinig anders als cells(2 argumenten, rij en kolom), maar snelheid is honderden malen sneller.
http://www.mediafire.com/?8kbsfc8v0mjyiffquote:Op maandag 30 januari 2012 13:04 schreef Basp1 het volgende:
Kan de handige sheet met macros (tip 4) ergens anders geupload worden, de mediafire link werkt niet meer.
quote:Op maandag 30 januari 2012 11:07 schreef KritischeMassa het volgende:
Maak een cel waarin je zet =min(c:c)
vervolgens doe je voorwaardelijke opmaak vergelijken met die celwaarde
zie de link aan Basp, het menu zit hierin met verklaringenquote:Op maandag 30 januari 2012 12:55 schreef Deetch het volgende:
@Qu63, hoe maak je zo'n extra menu? en kun je die ook installeerbaar maken?
geen probleemquote:
Oeps, dan heb ik niet de goeie gepakt.. Ga em ff updaten!quote:Op maandag 30 januari 2012 13:30 schreef KritischeMassa het volgende:
[..]
http://www.mediafire.com/?8kbsfc8v0mjyiff
Gek in de OP wiki had ik sowieso ook een ander link geplakt (ik had de OP geheel herschreven)
Geen idee, dat was een screenshot van KritischeMassaquote:Op maandag 30 januari 2012 12:55 schreef Deetch het volgende:
@Qu63, hoe maak je zo'n extra menu? en kun je die ook installeerbaar maken?
Zie OPquote:Op maandag 30 januari 2012 15:06 schreef Jesse_ het volgende:
Wat zitten er eigenlijk voor macro's in het macro bestand?
NOD32 gaat helemaal over zijn gerrit van deze linkquote:Op maandag 30 januari 2012 13:30 schreef KritischeMassa het volgende:
[..]
http://www.mediafire.com/?8kbsfc8v0mjyiff
Gek in de OP wiki had ik sowieso ook een ander link geplakt (ik had de OP geheel herschreven)
Dat is gek... er zit niets bijzonders in namelijkquote:Op maandag 30 januari 2012 15:14 schreef mirelia het volgende:
[..]
NOD32 gaat helemaal over zijn gerrit van deze link
Je kan vast wel een excel bestand koppelen aan een simpel batch filetje dat even een deltree doet oidquote:Op maandag 30 januari 2012 15:23 schreef KritischeMassa het volgende:
[..]
Dat is gek... er zit niets bijzonders in namelijk
Maar misschien worden VBA macro's per definitie als riskant beoordeeld?
Het is gewoon een zip file met hierin een sheet met macro's
Als je het niet vertrouwd kun je de sheet openen zonder macro's te activeren en de code bekijken
Ik kan leuk programmeren, maar een virus schrijven is een level of 100 te hoog gegrepen voor mij
Ja ok, maar dat batchfiletje moet ik er dan wel bij leverenquote:Op maandag 30 januari 2012 15:59 schreef Jesse_ het volgende:
[..]
Je kan vast wel een excel bestand koppelen aan een simpel batch filetje dat even een deltree doet oid
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |