abonnement Unibet Coolblue
  zondag 4 april 2010 @ 13:12:49 #51
246313 Che_
Ape never kill Ape
pi_79929870
Is het mogelijk om in excel, 2 verschillende getallen in 1 cel, op te tellen (met spatie ertussen uiteraard) ?
pi_79929905
=SUM(LEFT(A1,1),RIGHT(A1,1))
?

Lijkt me meer dat je informatiebron verkeerd is.
Beter ga je dus splitsen naar kolommen met Text to columns.
  zondag 4 april 2010 @ 13:14:59 #53
62215 qu63
..de tijd drinkt..
pi_79929922
=A1&" "&A2
?
It's Time To Shine
[i]What would life be like without rhethorical questions?[/i]
  zondag 4 april 2010 @ 13:19:42 #54
246313 Che_
Ape never kill Ape
pi_79930053
Kijk ik heb zeg maar in cel A1 staan: 10 20

Zou ik met een formule in cel A2, 10+20 uitrekenen, dat je dus het getal 30 ziet in cel A2?
quote:
Op zondag 4 april 2010 13:14 schreef DaFan het volgende:
=SUM(LEFT(A1,1),RIGHT(A1,1))
?


Deze formule werkt niet trouwens. Geeft een error aan.

[ Bericht 54% gewijzigd door Che_ op 04-04-2010 13:29:06 ]
  zondag 4 april 2010 @ 13:36:17 #55
85514 ralfie
!Yvan eht nioj
pi_79930585
=LINKS(A1;VIND.SPEC(" ";A1))+DEEL(A1;VIND.SPEC(" ";A1);1000)

handig is anders... Waarschijnlijk ook retetraag als je er veel gebruik van maakt een geen tussencel maakt.
pi_79930590
Je moet een klein beetje meedenken.
Left(A1,1) geeft alleen de meest linker karakter aan (1 dus). RIGHT(A1,1) geeft 0.
SUM(1,0) = 1
Werkt prima hier.

Maar goed:
=SUM(VALUE(LEFT(A1,FIND(" ",A1)-1)),VALUE(RIGHT(A1,LEN(A1)-FIND(" ",A1))))
pi_79930706
quote:
Op zondag 4 april 2010 02:14 schreef anathavia het volgende:
Ik heb een probleempje met het besturingselement "keuzelijst met invoervak". Bij besturingselement opmaken kan ik bij invoerbereik een bereik aangeven waaruit je met het keuzevak kunt kiezen. Ik wil echter maar een bepaald deel van het bereik (wat aan een bepaalde waarde voldoet) in het keuzevak hebben.

Klinkt volgens mij niet heel duidelijk dus zal ik een voorbeeldje geven.
op werkblad 1 heb ik een lijst staan met verschillende producten. kolom 1 de productnaam en kolom 2 het aantal.
Ik wil vervolgens een keuzelijst maken op werkblad 2 van alle producten op werkblad 1 waarvan er meer dan 3 zijn.
Fucking moeilijk imo.
Ik kan wel een array maken van {1,0,1} als A1>3, B1<3, C1>3
Maar iemand enig idee hoe je dat weer kan omzetten naar {a,0,c} ?
  zondag 4 april 2010 @ 13:52:49 #58
85514 ralfie
!Yvan eht nioj
pi_79931099
aangezien de keuzelijst een vaste lengte heeft in zijn bereik, en er een variabel aantal producten aan je voorwaarden voldoet, is dit onmogelijk in excel, tenzij je genoegen neemt met een zooi lege regels in je keuzelijst.
pi_79931269
Hm met beetje testen krijg ik idd geen variabele array in een list
Misschien macrootje / formule om eerst de lijst in een apart tabblad te krijgen en daar een dynamic named range van te maken.
  zondag 4 april 2010 @ 14:17:26 #60
246313 Che_
Ape never kill Ape
pi_79931918
quote:
Op zondag 4 april 2010 13:36 schreef DaFan het volgende:
Je moet een klein beetje meedenken.
Left(A1,1) geeft alleen de meest linker karakter aan (1 dus). RIGHT(A1,1) geeft 0.
SUM(1,0) = 1
Werkt prima hier.

Maar goed:
=SUM(VALUE(LEFT(A1,FIND(" ",A1)-1)),VALUE(RIGHT(A1,LEN(A1)-FIND(" ",A1))))
Geen idee waarom deze niet werkt. Als ik em copy-paste krijg ik alleen tekst (die formule dus) te zien. Ga ik erop staan en dan enter krijg ik die error dat er iets fouts is.
quote:
Op zondag 4 april 2010 13:36 schreef ralfie het volgende:
=LINKS(A1;VIND.SPEC(" ";A1))+DEEL(A1;VIND.SPEC(" ";A1);1000)

handig is anders... Waarschijnlijk ook retetraag als je er veel gebruik van maakt een geen tussencel maakt.
Deze zou kunnen werken, alleen ik heb Excel 2007, engelse versie. En weet daar de formule niet voor.
pi_79932073
Wat voor error?
Bij mij werkt het namelijk prima als ik in A1 "10 20" zet.
  zondag 4 april 2010 @ 14:24:33 #62
246313 Che_
Ape never kill Ape
pi_79932175
quote:
Op zondag 4 april 2010 14:22 schreef DaFan het volgende:
Wat voor error?
Bij mij werkt het namelijk prima als ik in A1 "10 20" zet.
The formula you typed contains error. ( zegt niet welke)

Als ik dan op OK druk, is dit stukje

=SUM(VALUE(LEFT(A1,FIND(" ",A1)-1)),VALUE(RIGHT(A1,LEN(A1)-FIND(" ",A1))))

gemarkeerd
pi_79932206
Probeer eens puntkomma dan.
Ws heb je landinstellingen anders staan.
  zondag 4 april 2010 @ 14:27:59 #64
246313 Che_
Ape never kill Ape
pi_79932325
quote:
Op zondag 4 april 2010 14:25 schreef DaFan het volgende:
Probeer eens puntkomma dan.
Ws heb je landinstellingen anders staan.
Dat was het . Waar kan ik die landinstellingen veranderen. Werk liever met normale komma
pi_79932345
Configuratiescherm -> Landinstellingen
  zondag 4 april 2010 @ 14:44:16 #66
246313 Che_
Ape never kill Ape
pi_79932976
quote:
Op zondag 4 april 2010 14:28 schreef DaFan het volgende:
Configuratiescherm -> Landinstellingen
Ok, he bedankt voor je hulp.

Heb nog 1 piepkleine vraagje

Ik heb de getallen onder elkaar gezet d.m.v alt+enter.
De LEFT en RIGHT in de formule heb ik vervangen door UPPER en LOWER en dan krijg ik dit:

You have entered too many arguments for this function.

druk op OK en dit dikgedrukt:

=SUM(VALUE(UPPER(C3;FIND(" ";C3)-1));VALUE(LOWER(C3;LEN(C3)-FIND(" ";C3))))
pi_79933027
Waarom UPPER en LOWER wtf
Dat is toch totaal een andere functie. Die verandert alleen kleine letters naar grote en andersom . Die hebben geen argumenten nodig.

Het blijft een string van x karakters, dus de formule blijft gewoon werken (volgens mij, niet getest).
Beter splits je de getallen naar kolommen, das veul makkelijker.
  zondag 4 april 2010 @ 14:47:21 #68
246313 Che_
Ape never kill Ape
pi_79933097
quote:
Op zondag 4 april 2010 14:45 schreef DaFan het volgende:
Waarom UPPER en LOWER wtf
Dat is toch totaal een andere functie. Die verandert alleen kleine letters naar grote en andersom . Die hebben geen argumenten nodig.
Haha ja ik ben er niet zo handig in. Maar bij gewoon LEFT en RIGHT staat er #VALUE!
pi_79933263
Mja ik heb geen zin meer nu.
Anyway, je basis van je data is imo helemaal krom.
SPLITSEN.
pi_79968722
Hier een vraagje over de snelheid van een door mij gemaakte macro.

Ik heb op mijn werk een twintig-tal bestandjes met wat data daarin. Nu wil ik een overzicht maken met alle data, zodat ik, op basis van zo'n overzichts-bestand, een rapportage kan maken. Het idee is om de data in de twintig losse bestanden simpelweg onder elkaar te copy-pasten, zodat ik in één bestand alle data krijg. Uiteraard kan ik dit met de hand doen, maar dit leek mij nou juist een mooie taak voor een computer

Daartoe heb ik een macro bedacht (code staat hieronder), maar daar heb ik een vraag over. Als ik de macro run, dan duurt het hele proces op mijn PC 8 minuten en 35 seconden. Nu weet ik uit ervaring dat de PC's op mijn werk (VEEL) trager zijn, soms wel tot een factor 10 Maar laten wij het niet al te pessimistisch zijn en zeggen dat de PC's op mijn werk maar 2 keer langzamer zijn dan de mijne. Dan zou het runnen van de macro zo'n 16-17 minuten duren.

Maar dat zou betekenen dat ik alles beter met de hand onder elkaar kan copy-pasten, want daar ben ik zeker geen 16-17 minuten mee bezig.

Mijn vraag is dus: Ben ik gewoon extreem snel (sneller dan de computer) of is de macro die ik gebruik gewoon erg traag? En kan ik dit, op één of andere manier, verbeteren?

Het gaat om de volgende code:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Sub GetDataFromWVBs()

 Dim wb As Workbook
 Dim number As Byte
 
 Path = ThisWorkbook.Path & "\"

 Application.ScreenUpdating = False
   
 'Import from WVB1
    Set wb = Workbooks.Open(Path & "WVB1.xls", True, True)
    number = 1
    With ThisWorkbook.Worksheets("Lijst")
        .Range("C4:K303").Formula = wb.Worksheets("Lijst").Range("D4:L303").Formula
        .Range("L4:L303") = number
    End With
    wb.Close False 
    Set wb = Nothing 

 Application.ScreenUpdating = False 
End Sub


En het stukje tussen regel 10 en regel 18 staat er dan twintig keer in. Ik had er nog over nagedacht of ik geen for-loop kon gebruiken ofzo, maar daar kwam ik niet helemaal uit, omdat de range niet in elk bestand precies hetzelfde is. Dus heb ik de code maar gewoon twintig keer achter elkaar gezet

[ Bericht 4% gewijzigd door actuarisje op 05-04-2010 15:38:18 ]
  maandag 5 april 2010 @ 17:26:59 #71
158136 Joooo-pi
Do you want a balloon...
pi_79972098
quote:
Op maandag 5 april 2010 15:32 schreef actuarisje het volgende:
Hier een vraagje over de snelheid van een door mij gemaakte macro.

Ik heb op mijn werk een twintig-tal bestandjes met wat data daarin. Nu wil ik een overzicht maken met alle data, zodat ik, op basis van zo'n overzichts-bestand, een rapportage kan maken. Het idee is om de data in de twintig losse bestanden simpelweg onder elkaar te copy-pasten, zodat ik in één bestand alle data krijg. Uiteraard kan ik dit met de hand doen, maar dit leek mij nou juist een mooie taak voor een computer

Daartoe heb ik een macro bedacht (code staat hieronder), maar daar heb ik een vraag over. Als ik de macro run, dan duurt het hele proces op mijn PC 8 minuten en 35 seconden. Nu weet ik uit ervaring dat de PC's op mijn werk (VEEL) trager zijn, soms wel tot een factor 10 Maar laten wij het niet al te pessimistisch zijn en zeggen dat de PC's op mijn werk maar 2 keer langzamer zijn dan de mijne. Dan zou het runnen van de macro zo'n 16-17 minuten duren.

Maar dat zou betekenen dat ik alles beter met de hand onder elkaar kan copy-pasten, want daar ben ik zeker geen 16-17 minuten mee bezig.

Mijn vraag is dus: Ben ik gewoon extreem snel (sneller dan de computer) of is de macro die ik gebruik gewoon erg traag? En kan ik dit, op één of andere manier, verbeteren?

Het gaat om de volgende code:
[ code verwijderd ]

En het stukje tussen regel 10 en regel 18 staat er dan twintig keer in. Ik had er nog over nagedacht of ik geen for-loop kon gebruiken ofzo, maar daar kwam ik niet helemaal uit, omdat de range niet in elk bestand precies hetzelfde is. Dus heb ik de code maar gewoon twintig keer achter elkaar gezet
Het moet zeker sneller kunnen, ik heb ook zo'n soort bewerking op mijn werk en die werk in enkele minuten ca. 120 bestanden door. Je moet ze wel op je HDD zetten en niet vanaf een USB want dat gaat stukken langzamer.

Ik gebruik dan ook workbooks.open() en .close savechanges:=false, net als in jouw macro.
heitieh
  maandag 5 april 2010 @ 18:28:32 #72
246313 Che_
Ape never kill Ape
pi_79974217
Ik heb mijn bestand bijna af. Ik zit nog met dit probleempje:

Ik heb een een lijst met ong. 1200 regels. Ik heb 5 kolommen aparte kolommen met daaronder allemaal informatie zoals naam, datum aantal etc. Nou heb ik de Autofilter toegepast en de COUNTIF formule. De countif formule werkt uitstekend, alleen wanneer ik filter op iets (d.m.v de autofilter) verandert er niks aan de COUNTIF. De aantallen die die aangeeft blijven hetzelfde als wanneer ik niet heb gefilterd.

Iemand enig idee hoe ik dit kan oplossen.
pi_79975736
quote:
Op maandag 5 april 2010 18:28 schreef Che_ het volgende:
Ik heb mijn bestand bijna af. Ik zit nog met dit probleempje:

Ik heb een een lijst met ong. 1200 regels. Ik heb 5 kolommen aparte kolommen met daaronder allemaal informatie zoals naam, datum aantal etc. Nou heb ik de Autofilter toegepast en de COUNTIF formule. De countif formule werkt uitstekend, alleen wanneer ik filter op iets (d.m.v de autofilter) verandert er niks aan de COUNTIF. De aantallen die die aangeeft blijven hetzelfde als wanneer ik niet heb gefilterd.

Iemand enig idee hoe ik dit kan oplossen.
In de COUNTIF functie geef je een range mee. Deze verandert natuurlijk niet als je een autofilter gebruikt. Dus het is nogal logisch dat het gebruik van de filter niets doet met de uitkomst van de formule.
  maandag 5 april 2010 @ 19:17:38 #74
85514 ralfie
!Yvan eht nioj
pi_79975939
quote:
Op maandag 5 april 2010 15:32 schreef actuarisje het volgende:
Hier een vraagje over de snelheid van een door mij gemaakte macro.

Ik heb op mijn werk een twintig-tal bestandjes met wat data daarin. Nu wil ik een overzicht maken met alle data, zodat ik, op basis van zo'n overzichts-bestand, een rapportage kan maken. Het idee is om de data in de twintig losse bestanden simpelweg onder elkaar te copy-pasten, zodat ik in één bestand alle data krijg. Uiteraard kan ik dit met de hand doen, maar dit leek mij nou juist een mooie taak voor een computer

Daartoe heb ik een macro bedacht (code staat hieronder), maar daar heb ik een vraag over. Als ik de macro run, dan duurt het hele proces op mijn PC 8 minuten en 35 seconden. Nu weet ik uit ervaring dat de PC's op mijn werk (VEEL) trager zijn, soms wel tot een factor 10 Maar laten wij het niet al te pessimistisch zijn en zeggen dat de PC's op mijn werk maar 2 keer langzamer zijn dan de mijne. Dan zou het runnen van de macro zo'n 16-17 minuten duren.

Maar dat zou betekenen dat ik alles beter met de hand onder elkaar kan copy-pasten, want daar ben ik zeker geen 16-17 minuten mee bezig.

Mijn vraag is dus: Ben ik gewoon extreem snel (sneller dan de computer) of is de macro die ik gebruik gewoon erg traag? En kan ik dit, op één of andere manier, verbeteren?

Het gaat om de volgende code:
[ code verwijderd ]

En het stukje tussen regel 10 en regel 18 staat er dan twintig keer in. Ik had er nog over nagedacht of ik geen for-loop kon gebruiken ofzo, maar daar kwam ik niet helemaal uit, omdat de range niet in elk bestand precies hetzelfde is. Dus heb ik de code maar gewoon twintig keer achter elkaar gezet
het zal al eenstuk schelen als je je calculation tijdelijk stopzet

bij application.screenupdating=false ook
Application.Calculation = xlManual

bij application.screenupdating=true zet je dan nog
application.Calculation = xlCalculationAutomatic
pi_79976094
quote:
Op maandag 5 april 2010 19:17 schreef ralfie het volgende:

[..]

het zal al eenstuk schelen als je je calculation tijdelijk stopzet

bij application.screenupdating=false ook
Application.Calculation = xlManual

bij application.screenupdating=true zet je dan nog
application.Calculation = xlCalculationAutomatic
OK. Zal eens kijken hoeveel invloed dit heeft. Ik heb inmiddels ook al achterhaald dat het probleem waarschijnlijk ergens anders ligt. Ik heb de macro getest op een andere set bestanden en daar gaat het razendsnel (minder dan een halve minuut voor twintig bestanden). Het heeft dus blijbaar iets te maken met de bestanden die ik inlees...

EDIT: Ik ben er al achter. Als ik in explorer het bestand open, dan duurt het ook een seconde of 10-15 voordat er iets in kan gaan doen. Er zat in deze bestanden een macro die automatisch gestart wordt (via Workbook_Open). Als ik deze uitschakel, dan is het copy-pasten van twintig bestandjes idd zo gepiept.
abonnement Unibet Coolblue
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')