Excel의 행 수를 데이터로 계산하는 방법은 무엇입니까?
열 A에는 다음과 같은 데이터가 있습니다(빈 셀).
HEADING <-- this is A1
kfdsl
fdjgnm
fdkj
gdfkj
4353
fdjk <-- this is A9
데이터가 있는 마지막 셀의 셀 레퍼런스를 얻을 수 있으면 좋겠습니다. 위의에서 다시 한 번 : ㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴㄴ.A9
만, 첫 번째 셀)에서합니다.A4)
numofrows = destsheet.Range("A2").End(xlDown).Row - 1
저는 이런 게 좋아요.
ActiveSheet.UsedRange.Rows.Count
열 개수에서도 동일한 작업을 수행할 수 있습니다.저는 항상 일하세요.그러나 다른 열에 데이터가 있는 경우 위의 코드도 데이터를 고려합니다. 코드가 시트의 모든 셀 범위를 찾고 있기 때문입니다.
가장 안전한 옵션은
Lastrow = Cells.Find("*", [A1], , , xlByRows, xlPrevious).Row
Lastcol = Cells.Find("*", [A1], , , xlByColumns, xlPrevious).Column
마세요UsedRange ★★★★★★★★★★★★★★★★★」SpecialCells(xlLastCell) ★★★★★★★★★★★★★★★★★」End(xlUp)이전에 일부 행을 삭제한 경우 이러한 모든 방법으로 인해 잘못된 결과가 나타날 수 있습니다.Excel은 여전히 이러한 보이지 않는 셀을 세고 있습니다.
셀을 삭제하고 워크북을 저장한 후 닫았다가 다시 열면 이러한 방법이 다시 작동합니다.
Excel (2003, 2007, 2010) ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」첫 번째는 65536개의 행이 있는 반면, 두 번째는 100만 개 정도의 행이 있습니다. Sheet1.Rows.Count는 버전에 따라 이 번호를 반환합니다.
numofrows = Sheet1.Range("A1").Offset(Sheet1.Rows.Count - 1, 0).End(xlUp).Row
또는 동등하지만 더 짧습니다.
numofrows = Sheet1.Cells(Sheet1.Rows.Count,1).End(xlUp)
그러면 열 A의 아래쪽에서 비어 있지 않은 첫 번째 셀이 검색되어 행 번호가 취득됩니다.
이것은 다른 열에 더 낮은 데이터가 있는 경우에도 작동합니다. 셀에 합니다(FY4763과를 반환합니다).UsedRange의
실제로 셀 참조를 원할 경우 다음 항목만 사용해야 합니다.먼저 행 번호를 얻은 다음 셀 참조를 작성할 필요가 없습니다.
Set rngLastCell = Sheet1.Range("A1").Offset(Sheet1.Rows.Count - 1, 0).End(xlUp)
이 방법은 다음과 같은 경우에 실패합니다.
- 마지막 행에 데이터가 있습니다.
- 마지막 행이 숨겨지거나 필터링됩니다.
따라서 이러한 작업에 1,048,576 행을 사용할 계획이라면 주의해야 합니다.
모든 가능성을 긴 테스트 시트로 비교했습니다.
0,140625초(일 경우
lastrow = calcws.Cells.Find("*", [A1], , , xlByColumns, xlPrevious).row
0초 동안
iLastRow = calcws.Cells(rows.count, "a").End(xlUp).row
그리고.
numofrows = calcws.Cells.SpecialCells(xlLastCell).row
0,0078125초 동안
lastrow = calcws.UsedRange.rows.count
Do While 1
If calcws.Cells(lastrow, 1).Value = "" Then
lastrow = lastrow - 1
Else
Exit Do
End If
Loop
마음에 드는 건 분명해
Dim RowNumber As Integer
RowNumber = ActiveSheet.Range("A65536").End(xlUp).Row
고객님의 경우 #9가 반환됩니다.
다른 사이트에서 이 방법을 찾았습니다.새로운 큰 크기의 Excel에서 작동하며 최대 행과 열 수를 하드 코드할 필요가 없습니다.
iLastRow = Cells(Rows.Count, "a").End(xlUp).Row
iLastCol = Cells(i, Columns.Count).End(xlToLeft).Column
이 두 가지 방법 모두 작동하므로 Excel이 마지막으로 데이터를 볼 때 정의할 수 있습니다.
numofrows = destsheet.UsedRange.SpecialCells(xlLastCell).row
numofrows = destsheet.Cells.SpecialCells(xlLastCell).row
n = ThisWorkbook.Worksheets(1).Range("A:A").Cells.SpecialCells(xlCellTypeConstants).Count
알기 쉽게 하기 위해 명확한 예시와 실행 방법을 추가하고 싶다.
openFileDialog1.FileName = "Select File";
openFileDialog1.DefaultExt = ".xls";
openFileDialog1.Filter = "Excel documents (.xls)|*.xls";
DialogResult result = openFileDialog1.ShowDialog();
if (result==DialogResult.OK)
{
string filename = openFileDialog1.FileName;
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;
xlApp = new Excel.Application();
xlApp.Visible = false;
xlApp.DisplayAlerts = false;
xlWorkBook = xlApp.Workbooks.Open(filename, 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
var numRows = xlWorkSheet.Range["A1"].Offset[xlWorkSheet.Rows.Count - 1, 0].End[Excel.XlDirection.xlUp].Row;
MessageBox.Show("Number of max row is : "+ numRows.ToString());
xlWorkBook.Close(true, misValue, misValue);
xlApp.Quit();
}
Ctrl+*과 같은 CurrentRegion 속성을 사용하는 것이 좋습니다.CurrentRegion 속성은 현재 범위를 데이터로 최대 연속 범위로 확장합니다.데이터를 포함하는 셀 또는 범위로 시작한 다음 확장합니다.Used Range 속성은 다른 사용자가 시트 하단에서 포맷을 수행했다고 해서 큰 영역을 반환하는 경우가 있습니다.
Dim Liste As Worksheet
Set Liste = wb.Worksheets("B Leistungen (Liste)")
Dim longlastrow As Long
longlastrow = Liste.Range(Liste.Cells(4, 1), Liste.Cells(6, 3)).CurrentRegion.Rows.Count
언급URL : https://stackoverflow.com/questions/6301665/how-to-count-the-number-of-rows-in-excel-with-data
'source' 카테고리의 다른 글
| 열 유형을 가져올 SQL 문 (0) | 2023.04.19 |
|---|---|
| LPCTR, LPCTTR 및 LPTSTR (0) | 2023.04.19 |
| 다른 프로세스에서 사용 중인 파일 삭제 (0) | 2023.04.19 |
| 텍스트 파일에서 문자열 읽기 및 쓰기 (0) | 2023.04.19 |
| 한 필드의 날짜를 다른 필드의 시간과 결합하는 방법 - MS SQL Server (0) | 2023.04.19 |