Accueil > Forum > > > > optimiser la recherche d'une case vide dans excel
optimiser la recherche d'une case vide dans excel
mercredi 21 mai 2008 à 00:38:04 |
optimiser la recherche d'une case vide dans excel

Jacky7
|
Bonsoir à tous, J'ai realisé un prog qui permet l'écriture dans un fichier Excel, problème lorsque beaucoup de cases et de pages seront remplis j'ai peur que le prog soit trop long et perde des infos le temps de rechercher une case vide. Pour effectuer la recherche d'une case vide, j'utilise une methode que j'ai trouvé sur le site : LigneVide = oWk.Sheets(VariablePage).Cells(Rows.Count, "A").End(xlUp).Row + 1 Je me demandais s'il n'était pas possible de garder le numero de la page et de la case en memoire afin que le prog sache où il doit ecrire directement lorsqu'il recevra la prochaine info et non pas rechercher à chaque fois la première case vide de la colonne. Est ce que quelqu'un aurait une idée sur la facon dont je pourrai m'y prendre ? Merci. Jack.
|
|
mercredi 21 mai 2008 à 01:15:27 |
Re : optimiser la recherche d'une case vide dans excel

jack
|
Salut ou Re ;-) Oui, à toi de tester les deux solutions. Le programme qui va faire cette recherche doit, je pense, être contenu dans une macro. Cette macro fait partie d'une feuille. Dans la partie Déclaration de ta feuille (tout en haut), déclare la variable qui mémorisera cette données : Dim maLigne As Integer Dim maColonne As Integer
Ensuite, dans ton code, tu peux mémoriser tes chiffres n'importe où (dans cette feuille). Il te suffira donc d'utiliser le contenu de ces variables pour aller à la bonne place : Cells(maColonne, maLigne)Puis, quand tu auras écrit une valeur dans cette cellule, d'incrémenter la ou les variables pour préparer la prochaine insertion. Si, au moment où tu veux utiliser tes variables, elles sont vides, il faudra faire une première recherche telle que tu l'as décrite. Vala Jack, MVP VBNB : Je ne répondrai pas aux messages privés Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
|
|
mercredi 21 mai 2008 à 09:35:16 |
Re : optimiser la recherche d'une case vide dans excel

jimy neutron
|
Jack,
"Il te suffira donc d'utiliser le contenu de ces variables pour aller à la bonne place : Cells(maColonne, maLigne)"
Je me permets une petite rectification: Cells(MaLigne, MaColonne)
Jimy
|
|
mercredi 21 mai 2008 à 18:34:38 |
Re : optimiser la recherche d'une case vide dans excel

Jacky7
|
Salut,
J'ai testé différentes solutions afin de garder en mémoire le numéro de ligne, mais j'ai un souci lorsque je sort de la boucle if on dirai que la valeur de LigneVide revient automatiquement à zéro ?? (je teste sa valeur avant la prochaine réecriture et LigneVide toujours = 0). Serait- il possible de garder ce numéro en mémoire (LigneVide) à chaque sorti de boucle (voir même à la fermeture de VB6) afin que mon prog passe dans la 2eme partie de la boucle (ElseIf) ?
Voila ce que j'ai fait :
MsgBox (LigneVide)
If LigneVide = 0 Then LigneVide = oWk.Sheets(1).Cells(Rows.Count, "A").End(xlUp).Row + 1 MsgBox (LigneVide) ElseIf LigneVide > 0 Then LigneVide = LigneVide + 1 MsgBox "MaLigne" End If
oWk.Sheets(1).Range("A" & LigneVide) = Text2
Est ce quelqu'un aurait une idée ? Merci Jack.
|
|
mercredi 21 mai 2008 à 21:52:27 |
Re : optimiser la recherche d'une case vide dans excel

jimy neutron
|
Comme t'as proposé Jack, place ta variable en global. Si tu la declare dans la procedure qui l'utilise, elle sera "dimentionnée" (Dim ...) donc réinitialisée à chaque execution.
Public LigneVide As Integer 'dans "Genenrale /Declaration"
Puis,
Private Sub CommandButton1_Click()
MsgBox (LigneVide)
If LigneVide = 0 Then
LigneVide = Sheets(1).Cells(Rows.Count, "A").End(xlUp).Row + 1
MsgBox (LigneVide)
ElseIf LigneVide > 0 Then
LigneVide = LigneVide + 1
MsgBox "MaLigne"
End If
Sheets(1).Range("A" & LigneVide) = Text2
End Sub
Jimy
|
|
mardi 27 mai 2008 à 17:40:46 |
Re : optimiser la recherche d'une case vide dans excel

Jacky7
|
Salut jimy neutron,
La solution que tu m'as donné fonctionne merveilleusement bien, je voulais simplement savoir s'il serait possible de garder cette valeur lorsque je ferme mon programme et VB6 en mémoire afin que mon prog sache où il doit écrire lors de la prochaine ouverture ou bien doit-je faire une recherche à chaque fois que je lance mon prog ?
Merci
|
|
mercredi 28 mai 2008 à 09:02:19 |
Re : optimiser la recherche d'une case vide dans excel

jimy neutron
|
Salut,
Oui, tu peux garder la valeur de cette variable, mais uniquement dans un fichier texte ou Ini que tu ecris lors de la fermeture de l'appli, et que tu lis à l'ouverture, autrement, elle sera forcement effacer à la fermeture.
La methode est simple, et tu trouveras beaucoup d'exemples dans la rubrique "code" du site, avec les mots clés "Fichier ini" ou "fichier texte"....
A+
Jimy
|
|
Cette discussion est classée dans : excel, recherche, prog, case, vide
Répondre à ce message
Sujets en rapport avec ce message
Recherche d'un champ vide Excel via Access [ par darkspoilt ]
Bonjour je veux rechercher la premiere champq vide de mon fichier excel en parcourant de colonne a colonne (gauche a droite) donc j'ai écris ceci mais
[AIDE] VBA recherche et modification sous EXCEL [ par ribery91720 ]
Salut à tous J'ai un petit problème Je vous met mon fichier excel à disposition que vous pouvez télécharger ici : http://www.files-save.com/download-8
Créer un fichier Excel à partir d'Access? [ par Famas54 ]
Bonjour,Je souhaite pouvoir renvoyer le résultat d'une recherche dans une base de données et affichée pour le moment dans un sous formulaire situé sou
Case à cocher sur Excel - problèmes de mise en page de cases multiples [ par ispettore ]
Bonjour à tous,C'est mon premier message sur votre site. Je connais très peu la programmation, et j'ai un cas particulier pour vous. Je suis inspecteu
excel 03 - tester la dernière cellule vide d'une colonne + y ajouter le nombre précédant + 1 [ par sardonick ]
Bonjour,Je suis débutant et j'utilise naturellement Excel d'une manière atypique et sûrement grossière.Je crée une macro, mais je bute sur deux problè
Macro avec Excel [ par vbasamuel ]
bonjour,je cherche à "automatiser" un import de fichier via excel avec "enregistrer une macro".seulement je n'arrive pas à trouver l'astuce pour deman
Excel VBA Boucle de recherche cellules vide [ par Herod1983 ]
Bonjour, J'ai fais une boucle simple de recherche de cellules vide dans une colonne A et qui inscrit une valeur dans la première cellule vide trouvée.
sélectionner une colonne sur excel [ par thibaultanguy ]
Bonsoir le forum,j'ai besoin de modifier par recherche certaine valeur correspondant à une colonne. Après macro, celle-ci (ci-dessous) me permet avec
convertion 2003-2000 vba recherche de feuille excel [ par jerem5252 ]
Bonjour à tous,j ai un prob avec une partie de code lorsque je passe de excel 2003 à 2000.Dim strmessage As String Dim i As Long Set fs =
Recherche d'une valeur dans Excel en VBS [ par SAFENil ]
Bonjour, J'ai un petit problème en VBScript. Je souhaite faire une recherche dans un fichier excel, mais je ne veux obtenir que la première cellule q
Livres en rapport
|
Derniers Blogs
ASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHEASYNC/AWAIT: COMPRENDRE COMMENT CA MARCHE par fathi
Tout le monde est unanime pour dire que la programmation multi-thread et asynchrone est en train de devenir un sujet incontournable. Beaucoup de choses sont arrivées avec le framework 4 pour le code parallèle (TPL, PLinq,.) et bientôt, on va avoir l...
Cliquez pour lire la suite de l'article par fathi PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS !PAS D'INTELLITRACE SUR MON SITE WEB DANS IIS ! par Etienne Margraff
J'ai récemment eu un problème pour obtenir l'intelliTrace sur un site web dans IIS. Il n'y avait pas de message d'erreur, rien dans le journal d'évènement Windows, et après 3 appels à une voyante, 2 visites chez un marabou, j'ai failli me résign...
Cliquez pour lire la suite de l'article par Etienne Margraff OFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONSOFFICE 365 - SHAREPOINT ONLINE, QUELQUES LIMITATIONS par junarnoalg
De nombreuses entreprises font le choix de SharePoint Online, service fourni au travers de l'offre de Microsoft Office 365. S'il est vrai que ce choix apporte un grand nombre d'avantages; rapidité de mise en œuvre, disponibilité, large couvertu...
Cliquez pour lire la suite de l'article par junarnoalg PRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGEPRéSENTATION DES API REST DE WINDOWS AZURE : LISTER LES COMPTES DE STORAGE par richardc
http://www.c2idotnet.com/articles/presentation-des-api-rest-de-windows-azure-lister-les-comptes-de-storage
Désolé pour "toto", mais c2i existait avant blogs.developpeur.org et c'est mon site "officiel" ;-) ...
Cliquez pour lire la suite de l'article par richardc
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|