comment compter les lignes avec des cellules vides dans datagridview

JM Yu

Je suis un utilisateur de vb.net 2008 et je développe actuellement un système pour notre département. J'ai besoin de votre aide pour compter les lignes qui ont des cellules vides dans datagridview. Le nombre de lignes doit être affiché dans une étiquette.

Voici mon code.

For i = 0 To dgvMonitoringBoard.Rows.Count - 1
    If dgvMonitoringBoard.Rows(i).Cells(24).Value.ToString = " " Then
        x += 1
    End If
Next

lblForTransfer.Text = "Items for transfer to Purchasing:" & x
Codexer

Une approche un peu différente de @equisde. J'utiliserais Linqpour votre cas. Cela renverra le nombre de lignes contenant une chaîne DBNull.Value ou une chaîne vide ...

Voici un one-liner ...

 Dim count As Integer = DataGridView1.Rows.Cast(Of DataGridViewRow).Where(Function(r) r.Cells.Cast(Of DataGridViewCell).ToList.Any(Function(c) c.Value Is DBNull.Value OrElse String.IsNullOrEmpty(CStr(c.Value).Trim))).Count

Voici de haut en bas - Parfois, c'est plus facile à lire ...

   Dim count As Integer = DataGridView1.Rows.Cast(Of DataGridViewRow) _
                          .Where(Function(r) r.Cells.Cast(Of DataGridViewCell).ToList _
                          .Any(Function(c) c.Value Is DBNull.Value _
                          OrElse String.IsNullOrEmpty(CStr(c.Value).Trim))).Count

Alors vous pouvez faire ...

 lblForTransfer.Text = "Items for transfer to Purchasing: " & count.ToString

Remarque: essayez de ne pas utiliser +pour la concaténation de chaînes, utilisez &pour la concaténation de chaînes. Vous pouvez également le mettre dans une fonction et le transmettre de DataGridViewcette façon, vous pouvez le réutiliser partout où vous en avez besoin et renvoyer la valeur.

MISE À JOUR PAR DEMANDE

Voici une fonction partagée que j'ai écrite qui prend un DataGridViewobjet et un index de colonne facultatif pour effectuer la recherche à votre place. Cette fonction peut être utilisée partout où vous voulez l' utiliser ... Note: Ceci exclut également les nouvelles lignes si vous avez Allow Adding Rowsà vrai , si ce n'est pas permis n'a pas d' importance.

  Public Shared Function EmptyCount(ByVal dgrid As DataGridView, Optional ByVal intColumn As Integer = -1) As Integer
    Dim count As Integer = 0

    If dgrid IsNot Nothing AndAlso dgrid.Rows.Count > 0 Then
        If intColumn >= 0 Then 'Specific Column...
            If intColumn <= dgrid.Columns.Count Then
                count = dgrid.Rows.Cast(Of DataGridViewRow).Where(Function(rs) Not rs.IsNewRow) _
                    .Select(Function(r) r.Cells(intColumn)).Where(Function(r) r.Value Is DBNull.Value _
                     OrElse String.IsNullOrEmpty(CStr(r.Value))).Count
            End If
        Else 'Any columns...
            count = dgrid.Rows.Cast(Of DataGridViewRow).Where(Function(rs) Not rs.IsNewRow) _
                     .Where(Function(r) r.Cells.Cast(Of DataGridViewCell).ToList _
                     .Any(Function(c) c.Value Is DBNull.Value _
                     OrElse String.IsNullOrEmpty(CStr(c.Value).Trim))).Count
        End If
    End If

    Return count
End Function

Exemple d'utilisation

 'Include all columns...
 lblForTransfer.Text = "Items for transfer to Purchasing: " & EmptyCount(YOURDATAGRIDVIEWNAME).ToString

 'Specific column...
 lblForTransfer.Text = "Items for transfer to Purchasing: " & EmptyCount(YOURDATAGRIDVIEWNAME, 24).ToString

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Comment conserver les lignes avec des cellules vides (nan) lorsque vous effectuez un groupby sur une trame de données dans Python Pandas

Comment afficher des données Excel complètes avec des en-têtes Excel dans DataGridView? Les cellules deviennent vides lorsque je mets des en-têtes sur la connexion OleDB

jsGrid charge des lignes avec des cellules vides

Comment compter les lignes dans datagridview et considérer les lignes dupliquées comme uniques?

comment sélectionner des lignes adjacentes aux cellules vides dans Excel?

Comment masquer les "colonnes" si les cellules des colonnes sont vides dans une certaine plage?

Comment utiliser des Averageifs avec des cellules vides

Comment gérer les cellules vides dans R Markdown?

Comment ne pas compter les espaces vides dans StringTokenizer

Création d'une mesure pour compter les cellules non vides dans une matrice

ReactJS - Comment ignorer les lignes vides dans Excel lors de la lecture avec xlsx

Matériau angulaire + GAPI: le tableau montre des lignes, mais avec des cellules vides

Comment supprimer les lignes vides des "Frameworks, bibliothèques et contenu intégré" dans Xcode

compter les lignes qui tombent dans une période avec des pandas

Compter les cellules vides consécutives entre les cellules non vides d'une colonne

Comment créer des lignes vides dans une variable pour qu'elle soit renvoyée avec des lignes vides lorsqu'elle est renvoyée?

Comment insérer des lignes vides toutes les 3 lignes existantes dans un bloc de données?

Afficher des lignes au lieu de cellules vides dans un tableau html

UITableView avec des cellules personnalisées vides

Compter les combinaisons de lignes dans un groupe avec SQL

Compter les lignes dans la partition avec Trier par

Remplissez les cellules vides dans = {ARRAYFORMULA ()}

Comment définir les propriétés des cellules à partir des lignes sélectionnées dans gridview Devexpress?

Comment extraire toutes les lignes avec des cellules concaténées d'une table à l'aide de Xpath?

Comment compter les lignes dans un vecteur logique

Sélectionnez uniquement les cellules dans lesquelles la formule donne des nombres et non des cellules vides

Dans Google Sheets, comment puis-je compter les occurrences d'un mot spécifique dans des lignes via ArrayFormula ()

Ignorer les cellules vides dans Google Sheets pour le script de texte avec lien hypertexte

Comment valider un fichier pour les lignes non vides et les lignes sans commentaires dans makefile

TOP Lista

CalienteEtiquetas

Archivo