pvanbrakel
Gebruiker
- Lid geworden
- 2 dec 2010
- Berichten
- 35
Goedemorgen,
Ik heb een tijdje geleden een macro opgenomen en langzamerhand ben ik hem aan het aanpassen.
Nu wil ik dat de macro helemaal in het begin alle spaties verwijderd in het bestand. Daarvoor heb ik deze macro gevonden:
Maar als ik de rode zin invoer krijg ik de melding: This action will reset your project, proceed anyway.
De vraag is dus of iemand deze macro in mijn macro kan implementeren. Het moet nog voordat hij naar de termen CGX, CGY en CGZ gaat zoeken, want daar staan soms spaties voor en dan pakt hij hem niet, en hij moet exact op die termen blijven zoeken omdat er meerdere keren deze term voorkomt.
Bedankt alvast!
Ik heb een tijdje geleden een macro opgenomen en langzamerhand ben ik hem aan het aanpassen.
Nu wil ik dat de macro helemaal in het begin alle spaties verwijderd in het bestand. Daarvoor heb ik deze macro gevonden:
Code:
Sub TrimSelectie()
Application.ScreenUpdating = False
[COLOR="red"]Dim Kolom, Cel As Range[/COLOR]
Kolom = InputBox(" kolom ? ")
lastrij = Cells(65536, Kolom).End(xlUp).Row
For Each Cel In Range(Cells(1, Kolom), Cells(lastrij, Kolom))
Cel.Value = LTrim(RTrim(Cel.Value))
Cel.Value = Replace(Cel.Value, " ", "")
Next
MsgBox "De selectie is getrimd"
End Sub
Maar als ik de rode zin invoer krijg ik de melding: This action will reset your project, proceed anyway.
De vraag is dus of iemand deze macro in mijn macro kan implementeren. Het moet nog voordat hij naar de termen CGX, CGY en CGZ gaat zoeken, want daar staan soms spaties voor en dan pakt hij hem niet, en hij moet exact op die termen blijven zoeken omdat er meerdere keren deze term voorkomt.
Code:
Sub filteren()
'
Set CGZ = Range("A1:Z1").Find("CGZ", LookIn:=xlValues, LookAt:=xlWhole)
If CGZ Is Nothing Then
MsgBox "Kan de waarde CGZ niet vinden!"
Exit Sub
End If
Set CGY = Range("A1:Z1").Find("CGY", LookIn:=xlValues, LookAt:=xlWhole)
If CGY Is Nothing Then
MsgBox "Kan de waarde CGY niet vinden!"
Exit Sub
End If
Set CGX = Range("A1:Z1").Find("CGX", LookIn:=xlValues, LookAt:=xlWhole)
If CGX Is Nothing Then
MsgBox "Kan de waarde CGX niet vinden!"
Exit Sub
End If
Range("A2").Select
Selection.AutoFilter
Selection.AutoFilter Field:=CGZ.Column, Criteria1:=">-10", Operator:=xlAnd, _
Criteria2:="<12216"
Selection.AutoFilter Field:=CGY.Column, Criteria1:=">-10500", Operator:=xlAnd, _
Criteria2:="<62500"
Selection.AutoFilter Field:=CGX.Column, Criteria1:=">-15300", Operator:=xlAnd, _
Criteria2:="<15300"
Columns("A:N").Copy
Sheets.Add
ActiveSheet.Paste
Sheets("All").Select
Application.CutCopyMode = False
Selection.AutoFilter Field:=CGX.Column, Criteria1:=">62500", Operator:=xlAnd, _
Criteria2:="<185300"
Columns("A:N").Copy
Sheets.Add
ActiveSheet.Paste
Sheets("All").Select
Selection.AutoFilter Field:=CGZ.Column, Criteria1:=">12216", Operator:=xlAnd, _
Criteria2:="<18616"
Selection.AutoFilter Field:=CGY.Column, Criteria1:=">-10500", Operator:=xlAnd, _
Criteria2:="<57900"
Application.CutCopyMode = False
Range("A:N").Copy
Sheets.Add
ActiveSheet.Paste
Application.CutCopyMode = False
Range("D36").Select
Sheets("All").Select
Range("G707").Select
Selection.AutoFilter Field:=CGX.Column, Criteria1:=">57900", Operator:=xlAnd, _
Criteria2:="<190500"
Selection.AutoFilter Field:=CGZ.Column, Criteria1:=">12216", Operator:=xlAnd, _
Criteria2:="<25738"
Columns("A:N").Copy
Sheets.Add
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("All").Select
Selection.AutoFilter Field:=CGZ.Column, Criteria1:=">25738", Operator:=xlAnd, _
Criteria2:="<40730"
Selection.AutoFilter Field:=CGX.Column, Criteria1:=">111300", Operator:=xlAnd, _
Criteria2:="<175700"
Columns("A:N").Copy
Sheets.Add
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("All").Name = "all"
Sheets("Sheet1").Name = "blok1"
Sheets("Sheet2").Name = "blok 234"
Sheets("Sheet3").Name = "blok 5aft"
Sheets("Sheet4").Name = "blok 5fwd+6"
Sheets("Sheet5").Name = "blok7"
Sheets("all").Select
Selection.AutoFilter Field:=CGX.Column
Selection.AutoFilter Field:=CGY.Column
Selection.AutoFilter Field:=CGZ.Column
End Sub
Bedankt alvast!