0
votes

Comment puis-je calculer la somme des nombres de deux colonnes pour seulement une partie des rangées?

Dites que j'ai une feuille Excel avec 10 000 rangées et deux colonnes. Les 20 000 cellules sont remplies de chiffres et il n'y a pas de données manquantes. Je veux avoir une troisième colonne, dont les valeurs sont la somme de la colonne A et la colonne B. Par exemple, C70 = A70 + B70, et C82 = A82 + 82, et similaires.

Le seul problème est que je veux le faire pour seulement une partie des rangées, par exemple de la rangée 125 à la ligne 8954. Je m'en fiche du reste des valeurs. Et je ne veux pas le faire en faisant glisser la grille en utilisant la souris. Est-ce possible?


7 commentaires

Voulez-vous montrer chaque ligne individuelle ou voulez-vous le total de toutes ces lignes dans une cellule?


Je crois Sumproduct () sera votre ami pour cela, en supposant 1 valeur finale ..


@Scottcraner j'ai besoin de chaque ligne individuelle.


@Cyril Merci, mais je ne veux pas une valeur finale. J'ai besoin de toutes les sommes individuelles.


Donc ... = A2 + B2 dans la cellule c2 ? Quelle est la rack-up liée à votre portion de lignes? Quelle est la logique? Si cela est lié à VBA, veuillez publier ce que vous avez essayé TUNFAR.


Implémentez un test de ligne avec une instruction IF dans la première cellule. Double-cliquez sur le pointeur de la cellule pour remplir automatiquement le reste de la colonne avec la formule


@Cyril oui. Mais pour toutes les lignes de 125 à 8954.


3 Réponses :


1
votes

Je pense que vous avez besoin de logique sur ce qui se passe, lié à la ligne de début et de fin.

Vous pouvez utiliser un if-instruction ou Sumifs () Pour cela ... fera une déclaration IF-IF afin que je puisse spécifier de ne pas répondre aux exigences telles que NULL.

avec la ligne de démarrage 2 et la ligne de fin sous forme 4 (voir image), vous pouvez utiliser cette formule. et faites-la glisser vers le bas de toutes les colonnes: xxx

Entrez la description de l'image ici

Avis à l'image que C5 n'a pas de valeur; Cela est dû aux conditions de la déclaration IF-FAUX.


5 commentaires

Merci, mais mon problème est la partie traînante! Je ne veux pas traîner, comme je l'ai dit, 25000 rangées!


Vous n'avez pas à faire glisser lorsque vos autres colonnes ont des valeurs. Double-cliquez sur le pointeur!


@Gordafarid utilisez ensuite rempli de l'onglet Home. Vous pouvez également double-cliquer sur le coin inférieur droit de la cellule dans laquelle la première formule est trouvée.


@JVDV Si je fais cela, ça va jusqu'à la dernière rangée. Je ne veux pas ça. Je veux que cela soit appliqué, disons, la rangée 24 jusqu'à la ligne 12387, sur 1 000 000 rangées. Sans traîner. Est-ce possible?


Ou utiliser une macro VBA simple



2
votes

Si vous avez accès à la séquence () (actuellement disponible uniquement sur Office 365 Insiders), alors oui, il est possible: xxx

1000 est le nombre de rangées désireuses. Placez la formule dans la première cellule souhaitée et remplira automatiquement le reste.

Entrez la description de l'image ici


0 commentaires

0
votes

Une autre idée, une macro simple qui fera ce que vous voulez en demandant à l'utilisateur quelle est la ligne de démarrage et de fin.

    Sub test()
    Dim startrow As Integer 'variable to hold first row
    Dim endrow As Integer 'variable to hold last row

    startrow = InputBox("Enter the start row")
    endrow = InputBox("Enter the end row")

    'loops through you desired range calculating what you want
    Dim i As Integer
    For i = startrow To endrow
        Cells(i, 4).Value = Cells(i, 1).Value + Cells(i, 2).Value
    Next

    End Sub


0 commentaires