Utilisation de SumIf et CurrentRegion et test fichier .csv vide

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Aldonanou

XLDnaute Junior
Bonjour à Tous,

Je suis une débutante en VBA bien que passionnée par ce type de développement, mais à ce jour, mes connaissances ne me permettent pas de solutionner mon problème.

Je récupère des données d’un fichier.csv dont je teste la présence préalable dans le répertoire.

J’aimerai aussi tester ce fichier afin de savoir s’il n’est pas vide : j’avais essayé avec
' Vérifier que le fichier récupéré n'est pas vide
' If ActiveSheet.Cells(1, 2).Value <> "" Then
' MsgBox " Le fichier à extraire est vide !"
' Exit Sub
' End If
Mais cela ne va pas, le message remonte lorsque cela est le contraire !!

Une fois récupéré j’ajoute en colonne U la formule
ActiveCell.FormulaR1C1 = _
"=IF(RC[-20]=""Voiture"",-RC[-4]*RC[-3],IF(RC[-20]=""Vélo"",RC[-4]*RC[-3],""""))"
J’effectue ensuite deux sous-totaux.

Je voudrais, et c’est là que cela se corse, insérer la formule sur la dernière ligne de la dernière colonne qui en automatique se rédige de la sorte (pour l'exemple sélectionné) :
‘ Insère la formule somme si "Total Vélo"
ActiveCell.FormulaR1C1 = "=SUMIF(R[-89]C[-19]:R[-1]C[1],""Total Vélo"",C[1])"
Sauf que dans mon cas présent, d’un jour sur l’autre la zone change en fonction du nombre d’enregistrement.
J’ai essayé avec currentRegion. Select, mais aussi avec ActiveCell.FormulaR1C1 = Application.SumIf(Range("A1:A" & Range("U1").End(xlUp).Row), "Total Vélo"), je n’y arrive pas.

Pourriez-vous m’aider à résoudre ce souci car je bataille depuis plusieurs jours sans trouver la solution.

Merci d’avance

Nanou
 
Re : Utilisation de SumIf et CurrentRegion et test fichier .csv vide

Bonjour et bienvenue,

pour le 1er point
' Vérifier que le fichier récupéré n'est pas vide
' If ActiveSheet.Cells(1, 2).Value <> "" Then
' MsgBox " Le fichier à extraire est vide !"
' Exit Sub
' End If
ça serait pas plutôt

' Vérifier que le fichier récupéré n'est pas vide
' If ActiveSheet.Cells(1, 2).Value = "" Then
' MsgBox " Le fichier à extraire est vide !"
' Exit Sub
' End If

Bonne journée
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
1 K
Réponses
13
Affichages
2 K
Retour