2013-08-06 3 views
5

मैं वीबीए सीखने के लिए नया हूं और सोच रहा था कि कोई मुझे कोड के साथ मदद कर सकता है, जिसमें मुझे डेटा के साथ पंक्तियों की कुल संख्या गिनने की आवश्यकता है। मैं डेटा पंक्तियों की विभिन्न मात्राओं के साथ एकाधिक चादरों पर इसका उपयोग करने में सक्षम होना चाहता हूं।पंक्ति गणना जहां डेटा मौजूद है

अधिक विशेष रूप से मैं जेनेरिक कोड नहीं समझ सकता जो ए 1 - ए 100 या ए 1-ए 300 से पंक्तियों की संख्या की गणना करेगा।

अभी मैं इस तरह कुछ उपयोग करने की कोशिश कर रहा हूं, लेकिन यह काम नहीं करता है।

i = ActiveWorkbook.Worksheets("Sheet1").Range("A2 , Range("A2").End(xlDown)).Rows.Count 

कृपया मदद करें!

धन्यवाद

उत्तर

11

आप VBA की जरूरत है, आप कुछ जल्दी इस तरह कर सकता है:

Sub Test() 
    With ActiveSheet 
    lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row 
    MsgBox lastRow 
    End With 
End Sub 

यह डाटा युक्त अंतिम पंक्ति की संख्या प्रिंट होगा। जाहिर है कि अगर आप किसी अन्य उद्देश्य के लिए इसका उपयोग कर रहे हैं, तो वहां MsgBox की आवश्यकता नहीं है, लेकिन आखिरकार यह मूल्य तब भी बन जाएगा।

+0

यह भी पूरी तरह से काम करता है, आपकी मदद के लिए धन्यवाद –

-1

आप इस ?:

countif(rangethatyouhave, not("")) 

मैं तुम्हें कोड संपादक को खोलने की जरूरत नहीं लगता है, तो आप सिर्फ स्प्रेडशीट अपने आप में यह कर सकते हैं की कोशिश की है।

4

यह मानते हुए कि आपके Sheet1 आप आपके इस सुधार कोड का उपयोग करने की आवश्यकता होगी आवश्यक सक्रिय नहीं है: Range(arg1, arg2) इस स्थिति में जो महत्वपूर्ण के लिए

i = ActiveWorkbook.Worksheets("Sheet1").Range("A2" , Worksheets("Sheet1").Range("A2").End(xlDown)).Rows.Count 

दूसरा तर्क के लिए पूर्ण कार्यपत्रक संदर्भ में देखो।

+0

बहुत बढ़िया। यह पूरी तरह से काम करता है। आपकी मदद के लिए धन्यवाद। –

-1

यह मेरे लिए काम करता है। pivotcolumnfiltered है और cells के count की आवश्यकता होने पर Excel को नीचे की स्थिति पंक्ति में प्रदर्शित करने वाली संख्या को वापस लौटाता है।

Global Const DashBoardSheet = "DashBoard" 
Global Const ProfileColRng = "$L:$L" 
. 
. 
. 
Sub MySub() 
Dim myreccnt as long 
. 
. 
. 
myreccnt = GetFilteredPivotRowCount(DashBoardSheet, ProfileColRng) 
. 
. 
. 
End Sub 

Function GetFilteredPivotRowCount(sheetname As String, cntrange As String) As long 

Dim reccnt As Long 

reccnt = Sheets(sheetname).Range(cntrange).SpecialCells(xlCellTypeVisible).SpecialCells(xlCellTypeConstants).Count - 1 

GetFilteredPivotRowCount = reccnt 

End Function 
1

मैं http://www.mrexcel.com/

पर इस विधि पाया यह

With Worksheets("Data") 
    Ndt =Application.Range("A:A").Cells.SpecialCells(xlCellTypeConstants).Count 
    debug.print Ndt 
End With 

नाम "डाटा" वर्कशीट के स्तंभ एक गैर-खाली सेल की संख्या की गणना परिणाम तत्काल विंडो पर छपा है । यदि कॉलम ए में हेडर लाइन (या रेखाएं) हैं तो आप गिनना नहीं चाहते हैं, तो आपको 1 (या अधिक) घटाएं।

संबंधित मुद्दे