[Résolu][Calc]Vérifier l'existence de fichiers tiers

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Bismuth
Fraîchement OOthentifié
Messages : 6
Inscription : 16 nov. 2020 13:42

[Résolu][Calc]Vérifier l'existence de fichiers tiers

Message par Bismuth »

Bonjour à toutes et tous,

Je travaille actuellement sur un fichier d'environ 50000 lignes.
Chacune de ces lignes représente un objet (au sens réel du terme) qui peut -ou non- posséder un photo.
Par contre, il est difficile de savoir laquelle de ces lignes possède une ou non.
Avec un peu de concaténation, il m'est très facile de recréer le chemin d'accès théorique au possible fichier .jpg mais je n'ai jamais su faire de macros, que ce soit sous Calc, Excell, Works ou que sais-je.
Autant que je sache, il n'existe pas de fonction pour réaliser cette tâche et il faut nécessairement passer par une macro..
Est-ce que je me trompe et qu'il existe malgré tout une fonction pour ce faire ?
Si non, quelqu'un a-t-il déjà réalisé un code similaire que je pourrai honteusement (et de manière reconnaissante) copier ?
Par ailleurs, comment faire pour tester toutes les lignes, de manière exhaustive ?

Merci à toutes et tous
Dernière modification par Bismuth le 09 janv. 2021 11:39, modifié 1 fois.
LibreOffice 6.4.7.2
Windows 10 Famille 64 bits
Avatar de l’utilisateur
Dolev
InconditiOOnnel
InconditiOOnnel
Messages : 951
Inscription : 19 août 2018 05:20

Re: [Calc]Vérifier l'existence de fichiers tiers

Message par Dolev »

Bonjour,

Pas bien compris ta question car aucun document n'est joint pour l'illustrer.
Regarde l'aide en ligne sur la fonction interne du Basic nommée FileExists.
test.PNG
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Open Office 4.1.15 sous Windows 11
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: [Calc]Vérifier l'existence de fichiers tiers

Message par OOotremer971 »

Bonjour,
Bismuth a écrit :il m'est très facile de recréer le chemin d'accès théorique au possible fichier .jpg
A défaut de joindre un fichier exemple qui facilite grandement l'aide susceptible de t'être apportée, dans quelle colonne se trouve-t-il et sous quel forme ?

A+
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
Bismuth
Fraîchement OOthentifié
Messages : 6
Inscription : 16 nov. 2020 13:42

Re: [Calc]Vérifier l'existence de fichiers tiers

Message par Bismuth »

Bonjour,

Désolé de ne pas été clair !
Je ne savais pas trop quoi joindre comme fichier : je n'ai pas de code à fournir car je ne sais pas faire de macro ; j'ai joint un exemple de liste de chemins d'accès pour illustrer mon propos.
Il s'agit bien sûr d'une extraction d'un fichier beaucoup plus volumineux.
Ce dont j'aurais besoin, c'est d'une vérification systématique de la présence ou non du fichier au chemin indiqué.

Merci pour votre aide !
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 6.4.7.2
Windows 10 Famille 64 bits
Avatar de l’utilisateur
Dolev
InconditiOOnnel
InconditiOOnnel
Messages : 951
Inscription : 19 août 2018 05:20

Re: [Calc]Vérifier l'existence de fichiers tiers

Message par Dolev »

Re,

Sans doute, faudrait-il plutôt traiter des données en amont si elles proviennent d'ailleurs.
Cette macro parcourt ta liste et détermine si le fichier existe ou non :

Code : Tout sélectionner

nbLignes = 57 ' Nombre de lignes à traiter 
oDoc = ThisComponent ' Le classeur
oFeuil = oDoc.Sheets(0) ' La 1ere feuille qui est indexée à 0
For i = 0 to nbLignes-1
	if FileExists (oFeuil.getCellByPosition(0,i).string) then
		sRet = "existe"
	else
		sRet = "absent"
	endif
	oFeuil.getCellByPosition(1,i).string = sRet 
Next
Open Office 4.1.15 sous Windows 11
Bismuth
Fraîchement OOthentifié
Messages : 6
Inscription : 16 nov. 2020 13:42

Re: [Calc]Vérifier l'existence de fichiers tiers

Message par Bismuth »

Merci Dolev !

Ce code fonctionne parfaitement et a réglé mon problème (116 images manquantes sur 49893, en plus, c'est une bonne nouvelle !)

Encore une fois, merci infiniment, problème réglé.
LibreOffice 6.4.7.2
Windows 10 Famille 64 bits