XL 2016 Amélioration code VBA Transfert données tableau structuré vers autre tableau structuré

ZZ59264

XLDnaute Occasionnel
Bonsoir à tous,

J'ai un fichier et dans celui ci j'ai un code VBA qui permet de transférer notamment des données d'un TS vers un autre TS,

Le code enregistré manuellement va plus vite que celui joint, il doit surement avoir quelque chose qui m'échappe car je trouve qu'il n'est pas assez rapide,

Pourriez vous également comment faire pour actualiser également la requête T_GB avant la requête ECHEANCE ?, je ne souhaite pas passer par ResfreshAll.

Merci d'avance pour votre aide,

Cordialement,
 

Pièces jointes

  • TEST VBA EXCEL DOWNLOAD.xlsm
    96.5 KB · Affichages: 13
Dernière édition:
Solution
Re

Et avec ce code on passe à 0.02 seconde sur mon PC

VB:
Option Explicit

Sub valid_analyse()
Application.ScreenUpdating = False
Dim i As Integer, n As Long, j As Integer 'déclaration des variables
If CDate(Range("D_BASE")) <> CDate(Range("D_MODIF")) Then 'analyse date
    MsgBox ("Date Base différente de date modif")
    Exit Sub
End If
For n = 1 To [HISTO_T_GB].Rows.Count 'analyse si sauvegarde déjà effectuée
    If [HISTO_T_GB].Item(n, 1) = Sheets("ANALYSE").Range("E4").Value Then
        MsgBox ("Sauvegarde déjà effectuée")
        Exit Sub
    End If
Next

Range("T_GB_2").ListObject.DataBodyRange.Copy Range("HISTO_T_GB").ListObject.ListRows.Add.Range
 
End Sub

Merci de ton retour

@Phil69970

Dranreb

XLDnaute Barbatruc
C'est parce que la collection examinée par défaut est celle de la feuille active que je préfère en général utiliser Feuil10.ListObjects(1) ou Feuil8.ListObjects(1). Le plus souvent il n'y a qu'un seul tableau par feuille.
Mais je renomme aussi toujours d'abord tous les objets partout, comme WshHistoTGB au lieu de Feuil10 et WshTGB2 au lieu de Feuil8 par exemple. Sans jamais taper moi même de "_" dans ces noms (seules les listes déroulantes surmontant le fenêtre de code l'utilisent dans les noms de procédure de prise en charge d'évènements implantées automatiquement, comme séparateur entre le nom de l'objet et celui de l'évènement).
 

Discussions similaires

Statistiques des forums

Discussions
312 176
Messages
2 085 961
Membres
103 066
dernier inscrit
bobfils