Plantage /macrofonction

  • Initiateur de la discussion f.launay
  • Date de début
F

f.launay

Guest
Bonjour le forum,
j'ai récupéré le code ci joint sur le site de J.WALKENBACH
Problème cette fonction plante et je ne trouve pas la solution.
Quelqu'un aurait-il une idée?
Merci d'avance
The LASTINCOLUMN function
Function LASTINCOLUMN(rngInput As Range)
Dim WorkRange As Range
Dim i As Integer, CellCount As Integer
Application.Volatile
Set WorkRange = rngInput.Columns(1).EntireColumn
Set WorkRange = Intersect(WorkRange.Parent.UsedRange, WorkRange)
CellCount = WorkRange.Count
For i = CellCount To 1 Step -1
If Not IsEmpty(WorkRange(i)) Then
LASTINCOLUMN = WorkRange(i).Value
Exit Function
End If
Next i
End Function
 

Pièces jointes

  • ATAB.zip
    33.3 KB · Affichages: 42
G

G'Claire

Guest
F.Launey, le forum

Une petite information qui pourras t'aider dans le futur.

Ajoute en début de procédure (Premiere ligne) le code suivant qui te diras ou est l'errreur :

Option Explicit

Salut, G'Claire
 
A

Arnaud

Guest
salut,
tu a du oublier quelque chose en recopiant le code.
je peux déja te mettre sur une piste : ton code plante car la variable "rngInput " qui est le paramètre d'entré de ta fonction LASTINCOLUMN est a NULL quand on l'utilise donc forcement ça pète.
dans la fonction juste au dessus de celle que tu donne il y a :

MsgBox (i)
Dim groug As Range
valeurderetour = LASTINCOLUMN(groug)

et c'est la variable groug à laquelle tu dois affecter une valeur pour que ton code puisse fonctionner.

bonne chance ;)
 

Discussions similaires

Réponses
29
Affichages
1 K

Statistiques des forums

Discussions
312 500
Messages
2 089 013
Membres
104 004
dernier inscrit
mista