VBA: Mise à jour base de données

Résolu
julia Namor Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   -  
julia Namor Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir,

Je me permets de soumettre un autre souci.

Comment pourrais-je effectuer par vba une mise à jour d'une base de données (noms prénoms âge sexe....) en retirant tous les noms "Namor" par exemple?
Les noms se trouvent dans la colonne A

Merci de votre aide

Bien à vous




7 réponses

Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour,

Tu peux :
- soit faire une recherche du nom par itération dans la colonne A,
- soit appliquer un filtre sur la colonne A

Si besoin, joins un fichier à ta demande.
Pour cela, tu peux utiliser https://www.cjoint.com/
Ensuite, reviens coller ici le lien donné par le site.


A+
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour a vous deux,

un exemple de recherche et suppression lignes

https://www.cjoint.com/c/EJFhBLUt8xf
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Re-bonjour,

Un autre exemple avec un filtre
https://www.cjoint.com/c/EJFisSgZiwo

A+
0
julia Namor Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   33
 
Bonjour à vous
merci de votre soutien
l'exemple de gyrus est plus calibré à mes connaissances , du coup je l'ai modifié pour l'automatiser (call macro2) et eviter de repasser par l'userform
"réponse"

ex:
call macro2 apres l'importation de la base de données non mise à jour


Sub Macro2()
Dim Reponse As String
Dim DerLig As Long
'Reponse = InputBox("Quel est le nom à supprimer ?", "SUPPRESSION D'UN NOM", "A")
With Worksheets("Feuil1")
'If Reponse <> "" Then
On Error Resume Next
.Columns("A:C").AutoFilter
DerLig = .Range("A" & Rows.Count).End(xlUp).Row
.Range("$A$1:$C$" & DerLig).AutoFilter Field:=1, Criteria1:="namor"
.Rows("2:" & DerLig).SpecialCells(xlCellTypeVisible).Delete
.Columns("A:C").AutoFilter
'End If
End With
End Sub




En principe ça devrait répondre à mes besoins , j'adapte et je teste ..

Bien à vous
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
julia Namor Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   33
 
Bonjour
Tout roule merci pour l'aide

Pour que la lecture de la bdd] apres impression puisse etre facile , je voudrais la trier par vba par ordre alphabetique .Le tri devrait se faire en fonction de la colonne A ( a2) jusqu'à la derniére ligne occupée ; la bdd s'étend juqu'a la colonne AQ .
J'ai essayé avec l'enregistreur de la macro mais la feuille de la bdd est activée et affichée dés que j'appelle la macro de tri .
merci de votre soutien
0
Gyrus Messages postés 3334 Date d'inscription   Statut Membre Dernière intervention   526
 
Bonjour,

Tu peux essayer ce code
Sub Trier()
Dim DerLig As Long
With Worksheets("Feuil1")
DerLig = .Range("A" & Rows.Count).End(xlUp).Row
.Range("A2:AQ" & DerLig).Sort Key1:=.Range("A2"), Order1:=xlAscending, Header:=xlNo
End With
End Sub


N'ayant pas de fichier exemple à disposition, je n'ai pas effectué le test.

A+
0
julia Namor Messages postés 524 Date d'inscription   Statut Membre Dernière intervention   33
 
MERCI beaucoup
NB; Je pensais avoir mis résolu
0