Kezdőlap › Fórumok › Excel programozás › Cells(r,c) függvény › Hozzászólás: Cells(r,c) függvény
Szia!
Köszi, ez így tényleg tök jó. Közben megcsináltam másként, ide rakom az egészet:
(Valamelyik oszlopban lévő értékek szerint szed szét egy fájlt több darabra)
Sub új_oszlop_szerint()
Dim wb, neva, el, mas, oszl As String
fej = InputBox(„Hány sornyi a táblázatod fejléce?”, „Fejléc megadása”, „1”)
neva = InputBox(„Milyen néven mentsem a fájlokat?”, „Fájlnév megadása”, „Darabolt”)
oszl = InputBox(„Melyik oszlop szerint válogassak? (Nagy betűvel add meg!)”, „Oszlop megadása”, „A”)
kulcs = oszl & (fej + 1)
Sheets(„Alap”).Select
Cells.Select
ActiveWorkbook.Worksheets(„Alap”).Sort.SortFields.Clear
ActiveWorkbook.Worksheets(„Alap”).Sort.SortFields.Add Key:=Range(kulcs), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
Cells.Select
With ActiveWorkbook.Worksheets(„Alap”).Sort
.SetRange ActiveCell.CurrentRegion
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
kezd = fej + 1
fejsor = 1 & „:” & fej
beill = kezd & „:” & kezd
Sheets(„Alap”).Select
Rows(fejsor).Select
Selection.Copy
Sheets(„Segéd”).Select
Rows(fejsor).Select
ActiveSheet.Paste
Sheets(„Alap”).Select
Do
Sheets(„Alap”).Select
i = kezd
Do
el = oszl & i
elso = Range(el).Value
mas = oszl & i + 1
masik = Range(mas).Value
i = i + 1
Loop Until elso <> masik
‘kezd most még az eredeti érték
vege = i
masol = kezd & „:” & vege – 1
Sheets(„Alap”).Select
Rows(masol).Select
Application.CutCopyMode = False
Selection.Copy
Sheets(„Segéd”).Select
Rows(beill).Select
ActiveSheet.Paste
‘hozzáigazítjuk a tartalomhoz
Cells.Select
Cells.EntireColumn.AutoFit
‘átmásoljuk új lapra ée lementjük:
wb = ActiveWorkbook.Path
Sheets(„Segéd”).Select
Sheets(„Segéd”).Copy
wb = wb & „\” & neva & ” ” & elso & „.xls”
ActiveWorkbook.SaveAs wb
ActiveWindow.Close
‘fejsort kivéve kitöröljük az adatokat
torol = (fej + 1) & „:” & vege
Sheets(„Segéd”).Select
Rows(torol).Select
Selection.ClearContents
kezd = i
Loop Until masik = „”
Sheets(„Segéd”).Select
Rows(fejsor).Select
Selection.ClearContents
Sheets(„Vezérlő”).Select
End Sub