Erreur non concordance de types

Bonjour

Je suis débutante en macro VBA et je l'utilise dans le cadre d'un logiciel de requêtage.

Je m'adresse à vous aprés plusieurs heures de recherches et je suis sure que la réponse est assez simple

Voici le code d'origine

Function TopNExtraction
Set db = Client.OpenDatabase("comparatif regroupé.IMD")
Set task = db.TopRecordsExtraction
task.IncludeAllFields
task.AddKey "TOTAL_SOMME", "D"
dbName = "TOP1.IMD"
task.OutputFileName = dbName
task.NumberOfRecordsToExtract = 30
task.PerformTask
Set task = Nothing
Set db = Nothing
Client.OpenDatabase (dbName)
End Function

Je voudrais remplacer le chiffre 30 par une variable qui serait indiqué dans une boite de dialogue.

J'ai donc écris

Function TopNExtraction
Dim TOP As Long
TOP= InputBox( "nombre de ligne à extraire")
Set db = Client.OpenDatabase("comparatif regroupé.IMD")
Set task = db.TopRecordsExtraction
task.IncludeAllFields
task.AddKey "CRITERE_DE_REGROUPEMENT", "A"
task.AddKey "TOTAL_SOMME", "D"
dbName = "TOP.IMD"
task.OutputFileName = dbName
task.NumberOfRecordsToExtract = "& TOP"
task.PerformTask
Set task = Nothing
Set db = Nothing
Client.OpenDatabase (dbName)

J'ai un message d'erreur m'indiquant "Non concordance des types".

Je suis un peu perdue

merci de l'aide

Sonia

bonjour,

essaie ainsi

task.NumberOfRecordsToExtract = TOP

Bonjour

Merci de ton aide.

Mais ca ne fonctionne pas. Le fichier extrait est le fichier total et non le nombre d'extraction demandé dans la Inputbox

bonjour,

as-tu la documentation concernant l'utilisation de ton logiciel de requêtage via VBA ? de quel logiciel s'agit-il ? NumberOfRecordsToExtract doit-il être de type Long ?

Il s'agit de Idea

La forme doit être un nombre entier.

Pour autant, rien n'indique que je ne peux pas créer un inputbox.

bonjour

essaie en remplaçant

Dim TOP As Long

par

Dim TOP As integer
Rechercher des sujets similaires à "erreur concordance types"