Matrice et récupération de données

Bonjour, j'ai examen dans deux jours et je cale sur ce td. J'aimerais bien recevoir un peu d'aide de votre part et pouvoir comprendre le pourquoi du comment afin de pouvoir m'en sortir pendant mon partiel.

Je m'explique,

Sur ma plage de données K11:P16, j'ai un tableau à deux entrées qui me donne la distance entre deux villes.

je veux être capable, en ayant demandé à l'utilisateur le nom des deux villes, de récupérer cette information dans la matrice et dire que la ville n'est pas dans la base de données si jamais elles n'y sont pas.

J'ai encore un autre souci concernant un autre exercice.

En effet, j'ai une plage de données G9:I23 qui contient des titres de livres ainsi que leurs auteurs et le nombre de livres vendus, je voudrais pouvoir obtenir dans un msgbox le nombre de livres vendus par auteur chaque fois que j'entre le nom d'un auteur.

Là encore j'ai des soucis...

Je joins à ce message le fichier excel concerné ainsi que le code que j'ai déjà écrit.

Merci par avance.

premier exo:

Sub exo6_question1()

Dim p, s, r As Range, i, k, g As Integer, j, f As String

Set p = [L11:P16]

Set s = [K12:P16]

'Set r = [K13]

j = InputBox(" veuillez entrer le nom de la première ville")

f = InputBox("veuillez entrer le nom de la seconde ville")

For i = 1 To p.Columns.Count

For k = 1 To s.Rows.Count

If p.Cells(1, i).Value Like j And s.Cells(i, 1).Value Like f Then

MsgBox " la distance entre les villes " & j & f & " est " & p.Cells(i).Value

ElseIf Not p.Cells(1, i) Like j And Not p.Value(i, 1) Like f Then

MsgBox ("le nom de la ville n'est pas dans la BDD")

End If

Next k

Next i

End Sub

second exo :

Sub exo5_question3()

Dim p As Range, n As String, i, j, k As Integer

Set p = [G10:I23]

k = 0

n = InputBox(" veuillez entrer le nom d'un auteur")

For i = 1 To p.Rows.Count

If p.Cells(i, 2).Value Like n Then

k = k + p.Cells(i, 3)

End If

'Else

'MsgBox ("cet auteur n'existe pas dans la base de données")

MsgBox "l'auteur " & n & " a vendu " & k

Next i

End Sub

Salut Bambir et bienvenue sur le Forum,

Est-ce bien correct de faire tes devoirs à ta place ?? Mais bon, si ça peut t'aider.

Dans le fichier ci-joint une solution pour ta première question.

Tu ne devrais pas poser 36 questions sur le même fil, ça décourage un peu

A te relire.

Merci d avance de ton aide yvouille, mais ce ne sont pas des devoirs à faire à la maison.

Il s agit d une feuille de td donnée à titre facultatif pour ceux qui veulent s entraîner avant l examen.

Comme tu as pu le voir, j ai essayé de répondre aux questions mais sans succes

D où ma présence sur ce forum.

Il y a plein d autres exercices à faire mais j ai buté sur ceux la.

Je vais regarder ce que tu m as fourni comme éléments de réponse.

C est sympa. Je reviens vers toi pour te dire si ça a marché.

Re-bonjour,

Pour tes autres questions, ouvre éventuellement un autre fil, peu de membres s'intéressant à un fil déjà commencé.

A te relire.

Une dernière question Yvouille, j'espère que j'aurais une réponse à temps.

Si dans la même matrice des villes, je veux récupérer le nom des villes les plus distantes?

J'ai essayé avec vlookup et hlookup après avoir trouvé le max dans la matrice mais cela ne fonctionne pas.

J'ai également essayé avec index et match mais sans succès.

Et concernant le fait qu'en demandant à l'utilisateur le nom d'une ville et la distance d en km et qui affiche les noms des villes à moins de d km, toutes les villes.

Concernant ce point, je sèche totalement...

Soit dit en passant, j'ai réussi à trouver la sub pour trouver le nombre de livres vendus pour chaque auteur :

Sub exo5_question3()

Dim p, q, r As Range, n As String, i, j, k As Integer

Set p = [J10]

Set q = [I10:I23] ' quantité

Set r = [H10:H23] 'nom de l'auteur

n = InputBox(" veuillez entrer le nom d'un auteur")

k = 0

For i = 1 To q.Rows.Count

If r.Cells(i).Value = n Then

k = k + q.Cells(i).Value

End If

Next i

If k = 0 Then

MsgBox " pas d'ouvrage pour cet auteur"

Else

MsgBox "le nombre d'ouvrages de cet auteur est " & k

End If

End Sub

Si jamais ça peut servir à quelqu'un...

Salut,

Je n'ai malheureusement pas trop de temps à consacrer à tes demandes actuellement. Comme déjà conseillé, ouvre un nouveau fil avec une question à la fois. Et fais bien attention de te mettre dans la peau de celui qui lira ta demande et qui n'a aucune idée de ton fichier ; essaie d'être le plus clair possible, sans donner d'informations inutiles non plus.

Amicalement.

Rechercher des sujets similaires à "matrice recuperation donnees"