alexander321
Gebruiker
- Lid geworden
- 25 jun 2012
- Berichten
- 77
Beste Mensen,
Ik krijg een export van een x-aantal txt bestanden.
Deze worden aan elkaar geplakt middels een macro.
Ik wil middels een inputbox een variabele krijgen.
Ik wil ook een loop, zie onderstaand.
Helaas werkt dit zo niet.
Wie kan me verder helpen?
Alvast dank!
Ik krijg een export van een x-aantal txt bestanden.
Deze worden aan elkaar geplakt middels een macro.
Ik wil middels een inputbox een variabele krijgen.
Ik wil ook een loop, zie onderstaand.
Helaas werkt dit zo niet.
Wie kan me verder helpen?
Alvast dank!
Code:
Sub Folderevaluatie()
Plaats = "xxx"
Foldernr = InputBox("Geef het folderNUMMER op.")
' Vraag welke folders geevalueerd moeten worden
Dim Msg, Title As String
Dim MyInput As Integer
' Definieer het bericht
Msg = " " _
& vbNewLine & "Geef 1 voor F, H, I" _
& vbNewLine & "Geef 2 voor F, H, I, S"
' Definieer de titel
Title = "Welke Foldercodes wil je evalueren?"
MyInput = InputBox(Msg, Title)
Select Case MyInput
Case 1
' Geef de variabelen in de gedefinieerde reeks op
For Each cl In Array(1, 2, 3)
If cl = 1 Then
Foldercode = " F"
ElseIf cl = 2 Then
Foldercode = " H"
ElseIf cl = 3 Then
Foldercode = " I"
End If
Case 2
' Geef de variabelen in de gedefinieerde reeks op
For Each cl In Array(1, 2, 3, 4)
If cl = 1 Then
Foldercode = " F"
ElseIf cl = 2 Then
Foldercode = " H"
ElseIf cl = 3 Then
Foldercode = " I"
ElseIf cl = 4 Then
Foldercode = " S"
End If
End Select
' Open het juiste bestand
BestandTXT = Plaats & Foldernr & Foldercode
Workbooks.OpenText Filename:=BestandTXT, Origin:= _
xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=True, _
Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8, 1), _
Array(9, 1), Array(10, 1), Array(11, 1), Array(12, 1), Array(13, 1), Array(14, 1), Array(15 _
, 1), Array(16, 1), Array(17, 1), Array(18, 1), Array(19, 1), Array(20, 1), Array(21, 1), _
Array(22, 1))
' Voeg een eerste kolom toe
Columns("A:A").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A1").Select
' Geef in eerste kolom de letter van de foldercode
ActiveCell.Value = Foldercode
Range("A1").Select
' Maak een hulpkolom voor kopieren foldercode
Columns("B:B").Select
Selection.Copy
Columns("A:A").Select
Selection.Insert Shift:=xlToRight
' Selecteer de gewenste gegevens en kopieer naar beneden door
Range("A1:B1").Select
Application.CutCopyMode = False
Selection.Copy
Range(Selection, Selection.End(xlDown)).Select
ActiveSheet.Paste
Application.CutCopyMode = False
' Verwijder de hulpkolom
Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
' Geef kolomtitel
Range("A1").Select
ActiveCell.FormulaR1C1 = "Foldercode"
Range("A1").Select
' Vervang de . door , ivm rekenwerk
Range("K2:AG2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
' Sla het bestand op
ActiveWorkbook.Save
' Sluit het bestand
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.DisplayAlerts = True
Next
MsgBox "Klaar"
End Sub
Laatst bewerkt: