Sytse1
Gebruiker
- Lid geworden
- 9 aug 2007
- Berichten
- 584
- Office versie
- miDer
Bijgaand een werkblad met in een cel bijeengebrachte cijfers b.v. 1+2
Ik wil deze cijfers, zonder, het plusteken, afzonderlijk in een kolom plaatsen.
Dit lukt mij met de volgende code
Het gaat alleen op als er maar 2 cijfers in de cel staan.
Zodra er drie cijfers in staan wil in Mid gebruiken. Maar ik stuit dan steeds op een foutmelding.
Verder verdwijnt in voorbeeld in regel 21 op onverklaarbare wij het cijfer 42.
Iemand een idee waarom b.v. bij de eerste cel Mid niet werkt, maar left en right wel?
(Als Mid wel zou werken moet er eerst een controle zijn op het aantal + in de cel want dan weet je of er 3 cijfers in staan(dien dan uit elkaar gehaald moeten worden.)
b.v.d.
Sytse
Bekijk bijlage 90 spelers pers.toern.xls
Ik wil deze cijfers, zonder, het plusteken, afzonderlijk in een kolom plaatsen.
Dit lukt mij met de volgende code
Code:
Sub schema()
Range("E2").Select
ActiveCell.FormulaR1C1 = "=LEFT(RC[-3],2)"
Range("F2").Select
ActiveCell.FormulaR1C1 = "=RIGHT(RC[-4],2)"
' Range("F2").Select
' ActiveCell.FormulaR1C1 = "=Mid(RC[-5],1)"
Range("H2").Select
ActiveCell.FormulaR1C1 = "tegen"
Range("J2").Select
ActiveCell.FormulaR1C1 = "=LEFT(RC[-6],2)"
Range("K2").Select
ActiveCell.FormulaR1C1 = "=RIGHT(RC[-7],2)"
Range("E2:K2").Select
Selection.AutoFill Destination:=Range("E2:K130"), Type:=xlFillDefault
Range("E2:K130").Select
ActiveWindow.SmallScroll Down:=-123
Selection.Copy
Range("M2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("M1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "speler1"
Range("N1").Select
ActiveCell.FormulaR1C1 = "speler2"
Range("O1").Select
ActiveCell.FormulaR1C1 = "speler3"
Range("P1").Select
ActiveCell.FormulaR1C1 = "tegen"
Range("Q1").Select
ActiveCell.FormulaR1C1 = "tegenspeler1"
Range("R1").Select
ActiveCell.FormulaR1C1 = "tegenspeler2"
Range("S1").Select
ActiveCell.FormulaR1C1 = "tegenspeler3"
Cells.Select
Selection.ColumnWidth = 8.29
Range("Q4").Select
Columns("Q:Q").EntireColumn.AutoFit
Columns("R:R").EntireColumn.AutoFit
Range("R2:S142").Select
ActiveWindow.ScrollRow = 101
ActiveWindow.ScrollRow = 100
ActiveWindow.ScrollRow = 99
ActiveWindow.ScrollRow = 98
ActiveWindow.ScrollRow = 97
ActiveWindow.ScrollRow = 96
ActiveWindow.ScrollRow = 95
ActiveWindow.ScrollRow = 94
ActiveWindow.ScrollRow = 93
ActiveWindow.ScrollRow = 92
ActiveWindow.ScrollRow = 91
ActiveWindow.ScrollRow = 90
ActiveWindow.ScrollRow = 89
ActiveWindow.ScrollRow = 88
ActiveWindow.ScrollRow = 87
ActiveWindow.ScrollRow = 86
ActiveWindow.ScrollRow = 85
ActiveWindow.ScrollRow = 84
ActiveWindow.ScrollRow = 83
ActiveWindow.ScrollRow = 82
ActiveWindow.ScrollRow = 81
ActiveWindow.ScrollRow = 80
ActiveWindow.ScrollRow = 79
ActiveWindow.ScrollRow = 78
ActiveWindow.ScrollRow = 77
ActiveWindow.ScrollRow = 76
ActiveWindow.ScrollRow = 75
ActiveWindow.ScrollRow = 74
ActiveWindow.ScrollRow = 73
ActiveWindow.ScrollRow = 72
ActiveWindow.ScrollRow = 71
ActiveWindow.ScrollRow = 70
ActiveWindow.ScrollRow = 69
ActiveWindow.ScrollRow = 68
ActiveWindow.ScrollRow = 67
ActiveWindow.ScrollRow = 66
ActiveWindow.ScrollRow = 65
ActiveWindow.ScrollRow = 64
ActiveWindow.ScrollRow = 63
ActiveWindow.ScrollRow = 62
ActiveWindow.ScrollRow = 61
ActiveWindow.ScrollRow = 60
ActiveWindow.ScrollRow = 59
ActiveWindow.ScrollRow = 58
ActiveWindow.ScrollRow = 57
ActiveWindow.ScrollRow = 56
ActiveWindow.ScrollRow = 55
ActiveWindow.ScrollRow = 54
ActiveWindow.ScrollRow = 53
ActiveWindow.ScrollRow = 52
ActiveWindow.ScrollRow = 51
ActiveWindow.ScrollRow = 50
ActiveWindow.ScrollRow = 49
ActiveWindow.ScrollRow = 48
ActiveWindow.ScrollRow = 47
ActiveWindow.ScrollRow = 46
ActiveWindow.ScrollRow = 45
ActiveWindow.ScrollRow = 44
ActiveWindow.ScrollRow = 43
ActiveWindow.ScrollRow = 42
ActiveWindow.ScrollRow = 41
ActiveWindow.ScrollRow = 40
ActiveWindow.ScrollRow = 39
ActiveWindow.ScrollRow = 38
ActiveWindow.ScrollRow = 37
ActiveWindow.ScrollRow = 36
ActiveWindow.ScrollRow = 35
ActiveWindow.ScrollRow = 34
ActiveWindow.ScrollRow = 33
ActiveWindow.ScrollRow = 32
ActiveWindow.ScrollRow = 31
ActiveWindow.ScrollRow = 30
ActiveWindow.ScrollRow = 29
ActiveWindow.ScrollRow = 28
ActiveWindow.ScrollRow = 27
ActiveWindow.ScrollRow = 26
ActiveWindow.ScrollRow = 25
ActiveWindow.ScrollRow = 24
ActiveWindow.ScrollRow = 23
ActiveWindow.ScrollRow = 22
ActiveWindow.ScrollRow = 21
ActiveWindow.ScrollRow = 20
ActiveWindow.ScrollRow = 19
ActiveWindow.ScrollRow = 18
ActiveWindow.ScrollRow = 17
ActiveWindow.ScrollRow = 16
ActiveWindow.ScrollRow = 15
ActiveWindow.ScrollRow = 14
ActiveWindow.ScrollRow = 13
ActiveWindow.ScrollRow = 12
ActiveWindow.ScrollRow = 11
ActiveWindow.ScrollRow = 10
ActiveWindow.ScrollRow = 9
ActiveWindow.ScrollRow = 8
ActiveWindow.ScrollRow = 7
ActiveWindow.ScrollRow = 6
ActiveWindow.ScrollRow = 5
ActiveWindow.ScrollRow = 4
ActiveWindow.ScrollRow = 3
ActiveWindow.ScrollRow = 2
ActiveWindow.ScrollRow = 1
Selection.Cut Destination:=Range("Q2:R142")
Range("M2:S130").Select
Selection.Replace What:="+", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
ActiveWindow.SmallScroll Down:=-150
Range("N2").Select
Columns("A:L").Select
Range("L1").Activate
Selection.Delete Shift:=xlToLeft
Cells.Select
Cells.EntireColumn.AutoFit
Range("A1").Select
Columns("A:A").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A1").Select
ActiveCell.FormulaR1C1 = "Ronde"
Range("A2").Select
ActiveWindow.SmallScroll Down:=108
Range("A2").Select
ActiveCell.FormulaR1C1 = "1"
Range("A3").Select
ActiveCell.FormulaR1C1 = "1"
Range("A4").Select
ActiveCell.FormulaR1C1 = "1"
Range("A5").Select
Dim r As Range
For Each r In ActiveSheet.UsedRange
If IsNumeric(r.Value) Then r.Value = Val(r.Value)
If r < 1 Then r = " "
Next r
With Sheets(1)
For Each cl In .UsedRange
cl.Value = Trim(cl.Value)
Next cl
For Each cl In .Range("A3:A" & .Cells(Rows.Count, 2).End(xlUp).Row)
If Not cl.Offset(, 1) = "" Then cl.Value = cl.Offset(-1).Value Else cl.Value = cl.Offset(-2).Value + 1
Next cl
.Columns(2).SpecialCells(4).EntireRow.Delete
End With
End Sub
Zodra er drie cijfers in staan wil in Mid gebruiken. Maar ik stuit dan steeds op een foutmelding.
Verder verdwijnt in voorbeeld in regel 21 op onverklaarbare wij het cijfer 42.
Iemand een idee waarom b.v. bij de eerste cel Mid niet werkt, maar left en right wel?
(Als Mid wel zou werken moet er eerst een controle zijn op het aantal + in de cel want dan weet je of er 3 cijfers in staan(dien dan uit elkaar gehaald moeten worden.)
b.v.d.
Sytse
Bekijk bijlage 90 spelers pers.toern.xls