<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - VBScript</title>
		<link>https://www.developpez.net/forums/</link>
		<description><![CDATA[Le forum d'entraide sur VBScript.  Avant de poster -> La FAQ VBScript]]></description>
		<language>fr</language>
		<lastBuildDate>Thu, 20 Aug 2026 18:30:06 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title>Forum du club des développeurs et IT Pro - VBScript</title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title><![CDATA[Activer l'UTF8 sans forcément écrire dans un fichier]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2184567&amp;goto=newpost</link>
			<pubDate>Thu, 09 Jul 2026 08:50:40 GMT</pubDate>
			<description><![CDATA[Dans n'importe quel langage,...]]></description>
			<content:encoded><![CDATA[<div>Dans n'importe quel langage, lorsqu'on lit des variables et que ses variables ont une chaîne avec des caractères UTF8 :<br />
- soit on déclare le charset quelquepart dans le fichier du code (ex: en MS DOS, on déclare <i>chcp 65001 &gt;nul</i> )<br />
- soit on enregistre le fichier du code lu dans un format particulier comme l'UTF8, et le langage comprend qu'il doit interpréter dans ce format.<br />
<br />
Ca donne que dans un .BAT ou .CMD, on peut avoir ce code, qui simplement crée une variable et lui met une chaîne en UTF8 :<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br /></div></td><td valign="top"><pre style="margin: 0">chcp <span style="color: #cc66cc;">65001</span> &gt;nul
<span style="color: #0000ff;">set</span> <span style="color: #FF0000;">&quot;var=D:\mon_r&eacute;pertoire_avec_accents&quot;</span>
echo %var%</pre></td></tr></table></code><hr />
</div>Dans Vbscript :<br />
- ?<br />
<br />
Je cherche et je cherche, tout ce que je trouve c'est des manip lourdes à inclure dans des fonctions, pour jouer avec des fichiers (lire/écrire dedans).<br />
Ex : <a rel="nofollow" href="https://stackoverflow.com/questions/13851473/how-to-read-a-utf-8-text-file-in-vbscript" target="_blank">https://stackoverflow.com/questions/...le-in-vbscript</a><br />
<br />
Mais simplement exécuter un truc simple, pas possible.<br />
Donc si vous jouer avec des chemins comportant des accents, aucune manière simple de faire comprendre à ce foutu langage que c'est de l'UTF8.<br />
L'instruction <i>stream.Charset  = &quot;utf-8&quot;</i> ne fonctionne pas (<a rel="nofollow" href="https://stackoverflow.com/questions/15230048/convert-string-to-utf-8" target="_blank">source</a>), et je ne vois pas comment utiliser /source-charset directement dans le code (<a rel="nofollow" href="https://learn.microsoft.com/en-us/cpp/build/reference/source-charset-set-source-character-set?view=msvc-170" target="_blank">source</a>).<br />
<br />
Voici mon code, sensé mettre à jour des raccourcis (.LNK) avec l'aide d'un .BAT qui le lance en lui passant en argument#1 un chemin de dossier/fichier :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">Set</span> WshShell = WScript.CreateObject<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;WScript.Shell&quot;</span><span class="br0">&#41;</span>
<span style="color: #0000ff;">Set</span> objShortcut = WshShell.CreateShortcut<span class="br0">&#40;</span>WScript.Arguments.Item<span class="br0">&#40;</span><span style="color: #cc66cc;">0</span><span class="br0">&#41;</span><span class="br0">&#41;</span>
&nbsp;
<span style="color: #0000ff;">If</span> left<span class="br0">&#40;</span>objShortcut.TargetPath,<span style="color: #cc66cc;">10</span><span class="br0">&#41;</span> = <span style="color: #FF0000;">&quot;D:\Machin\&quot;</span> <span style="color: #0000ff;">then</span> objShortcut.TargetPath = <span style="color: #FF0000;">&quot;D:\Truc\&quot;</span> + right<span class="br0">&#40;</span>objShortcut.TargetPath, len<span class="br0">&#40;</span>objShortcut.TargetPath<span class="br0">&#41;</span><span style="color: #cc66cc;">-10</span><span class="br0">&#41;</span>
&nbsp;
objShortcut.Save</pre></td></tr></table></code><hr />
</div>J'en ai marre, à chaque fois que je touche à un langage, c'est la croix et la bannière.<br />
Le fichier .VBS est enregistré en UTF8 mais ça comprend que dalle : dès qu'il reçoit un chemin avec accents ou caractères spéciaux, il plante (j'ai pu débuguer et confirmer ça).<br />
<br />
En amont le .BAT est bien en UTF8 (fichier et charset) :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="40"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br /></div></td><td valign="top"><pre style="margin: 0">@echo <span style="color: #0000ff;">off</span>
&nbsp;
setlocal EnableDelayedExpansion
chcp <span style="color: #cc66cc;">65001</span> &gt;nul
cd /d <span style="color: #FF0000;">&quot;%~dp0&quot;</span>
&nbsp;
:INIT
<span style="color: #0000ff;">set</span> /a <span style="color: #FF0000;">&quot;total=0&quot;</span>
<span style="color: #0000ff;">set</span> <span style="color: #FF0000;">&quot;batch_path=%~dp0&quot;</span>
<span style="color: #0000ff;">set</span> <span style="color: #FF0000;">&quot;batch_name=%~n0&quot;</span>
<span style="color: #0000ff;">set</span> <span style="color: #FF0000;">&quot;icons_dir=%~1&quot;</span>
&nbsp;
:ERROR1
<span style="color: #0000ff;">if</span> <span style="color: #0000ff;">not</span> defined icons_dir <span class="br0">&#40;</span>
	CLS
	echo.
	echo.
	echo    *** <span style="color: #0000ff;">ERROR</span> : NO DIRECTORY DROPPED ONTO THE BATCH ^^! ***
	echo.
	echo    THIS PROGRAM <span style="color: #0000ff;">IS</span> INTENDED <span style="color: #0000ff;">TO</span> SCAN A FOLDER <span style="color: #0000ff;">AND</span>
	echo    ITS <span style="color: #0000ff;">SUB</span>-FOLDERS, <span style="color: #0000ff;">IN</span> WICH ALL THE SHORTCUTS 
	echo    WILL BE UPDATED <span style="color: #0000ff;">TO</span> CHANGE THEIR PATH, ACCORDING
	echo    <span style="color: #0000ff;">TO</span> THE ASSOCIATED .VBS FILE.
	echo.
	echo    PLEASE DRAG <span style="color: #0000ff;">AND</span> DROP A FOLDER ONTO THIS PROGRAM.
	echo.
	echo.
	pause&gt;nul
	<span style="color: #0000ff;">goto</span> :ERROR1
<span class="br0">&#41;</span>
&nbsp;
:CHECK_FOLDER
<span style="color: #0000ff;">if</span> defined icons_dir <span style="color: #0000ff;">if</span> <span style="color: #0000ff;">not</span> exist <span style="color: #FF0000;">&quot;!icons_dir!\*&quot;</span> <span class="br0">&#40;</span>
	:ERROR2
	CLS
	echo.
	echo.
	echo    <span style="color: #0000ff;">ERROR</span> : THE ITEM DROPPED ONTO THE BATCH <span style="color: #0000ff;">IS</span> <span style="color: #0000ff;">NOT</span> A FOLDER ^^!
	echo.
	echo.
	pause&gt;nul
	<span style="color: #0000ff;">goto</span> :ERROR2
<span class="br0">&#41;</span>
&nbsp;
cd /d <span style="color: #FF0000;">&quot;!icons_dir!&quot;</span>
&nbsp;
:COUNT
<span style="color: #808080;">rem call :scan_lnk_in_subdirectories &quot;!cd!&quot; &quot;show&quot;</span>
<span style="color: #0000ff;">call</span> :scan_lnk_in_subdirectories <span style="color: #FF0000;">&quot;!cd!&quot;</span> <span style="color: #FF0000;">&quot;count&quot;</span>
&nbsp;
:MENU
CLS
echo.
echo.
echo   Folder dropped : !cd!
echo   Total <span style="color: #0000ff;">of</span> shortcuts found : !total!
echo.
echo   <span style="color: #0000ff;">Type</span> <span class="br0">&#91;</span>u<span class="br0">&#93;</span> <span style="color: #0000ff;">to</span> start the update.
echo   ^<span class="br0">&#40;</span>Please edit paths <span style="color: #0000ff;">in</span> the .vbs script before^<span class="br0">&#41;</span>
echo.
echo.
<span style="color: #0000ff;">set</span> <span style="color: #FF0000;">&quot;input=&quot;</span>
<span style="color: #0000ff;">set</span> /p input=
&nbsp;
<span style="color: #0000ff;">if</span> <span style="color: #FF0000;">&quot;!input!&quot;</span>==<span style="color: #FF0000;">&quot;u&quot;</span> <span class="br0">&#40;</span><span style="color: #0000ff;">goto</span> :PROCEED<span class="br0">&#41;</span> <span style="color: #0000ff;">else</span> <span class="br0">&#40;</span><span style="color: #0000ff;">goto</span> :MENU<span class="br0">&#41;</span>
&nbsp;
:PROCEED
<span style="color: #0000ff;">set</span> /a <span style="color: #FF0000;">&quot;num=0&quot;</span>
<span style="color: #0000ff;">call</span> :scan_lnk_in_subdirectories <span style="color: #FF0000;">&quot;!cd!&quot;</span> <span style="color: #FF0000;">&quot;update&quot;</span>
&nbsp;
:<span style="color: #0000ff;">END</span>
echo.
echo.
echo      PROGRAM HAS FINISHED.
echo.
echo      Close this window <span style="color: #0000ff;">or</span> push a key <span style="color: #0000ff;">to</span> exit.
Pause&gt;nul
&nbsp;
endlocal
<span style="color: #0000ff;">exit</span>
&nbsp;
:: ---- INTERNAL FUNCTIONS ----
&nbsp;
	:scan_lnk_in_subdirectories
		<span style="color: #0000ff;">for</span> /f <span style="color: #FF0000;">&quot;usebackq tokens=* delims=&quot;</span> %%d <span style="color: #0000ff;">in</span> <span class="br0">&#40;</span>`dir /S /A-D /B <span style="color: #FF0000;">&quot;%~1\*.lnk&quot;</span>`<span class="br0">&#41;</span> <span style="color: #0000ff;">do</span> <span class="br0">&#40;</span>
			<span style="color: #0000ff;">set</span> <span style="color: #FF0000;">&quot;item=%%d&quot;</span>
			<span style="color: #0000ff;">if</span> <span style="color: #FF0000;">&quot;%~2&quot;</span>==<span style="color: #FF0000;">&quot;count&quot;</span> <span class="br0">&#40;</span><span style="color: #0000ff;">set</span> /a <span style="color: #FF0000;">&quot;total=!total!+1&quot;</span><span class="br0">&#41;</span>
			<span style="color: #0000ff;">if</span> <span style="color: #FF0000;">&quot;%~2&quot;</span>==<span style="color: #FF0000;">&quot;show&quot;</span> <span class="br0">&#40;</span>
				<span style="color: #0000ff;">set</span> /a <span style="color: #FF0000;">&quot;total=!total!+1&quot;</span>
				echo !total!. !item!
			<span class="br0">&#41;</span>
			<span style="color: #0000ff;">if</span> <span style="color: #FF0000;">&quot;%~2&quot;</span>==<span style="color: #FF0000;">&quot;update&quot;</span> <span class="br0">&#40;</span>
				<span style="color: #0000ff;">set</span> /a <span style="color: #FF0000;">&quot;num=!num!+1&quot;</span>
                                title !num!/!total!
				echo.
				echo   *** Treating : !item! ***
				echo.
				!batch_path!!batch_name!.vbs <span style="color: #FF0000;">&quot;!item!&quot;</span>				
			<span class="br0">&#41;</span>
		<span class="br0">&#41;</span>
		<span style="color: #0000ff;">goto</span> :eof</pre></td></tr></table></code><hr />
</div></div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f292/autres-langages/general-visual-basic-6-vbscript/vbscript/">VBScript</category>
			<dc:creator>DeVit</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2184567/autres-langages/general-visual-basic-6-vbscript/vbscript/activer-l-utf8-forcement-ecrire-fichier/</guid>
		</item>
		<item>
			<title>Utiliser une boite dialog pour choix dossier et fichier Win 11 - 64bits</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2181730&amp;goto=newpost</link>
			<pubDate>Mon, 26 Jan 2026 11:44:48 GMT</pubDate>
			<description>Bonjour à toutes et à tous, 
...</description>
			<content:encoded><![CDATA[<div>Bonjour à toutes et à tous,<br />
<br />
Avec mon Fichier .vbs j'aimerai avec une boite de dialog pouvoir choisir mon dossier et mon fichier plutôt que de les fixer par défaut.<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #808080;">' D&eacute;finir le chemin du dossier et le nom du fichier</span>
<span style="color: #0000ff;">Dim</span> dossierParent, nomFichier
dossierParent = <span style="color: #FF0000;">&quot;C:\Test\&quot;</span>
nomFichier = <span style="color: #FF0000;">&quot;Test1.jpg&quot;</span>
&nbsp;
<span style="color: #808080;">' Cr&eacute;er l'objet Shell</span>
<span style="color: #0000ff;">Set</span> objShell = CreateObject<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Shell.Application&quot;</span><span class="br0">&#41;</span>
<span style="color: #0000ff;">Set</span> objFolder = objShell.Namespace<span class="br0">&#40;</span>dossierParent<span class="br0">&#41;</span>
<span style="color: #0000ff;">Set</span> objFile = objFolder.ParseName<span class="br0">&#40;</span>nomFichier<span class="br0">&#41;</span>
&nbsp;
WScript.Echo <span style="color: #FF0000;">&quot;Fichier : &quot;</span> &amp; objFolder.GetDetailsOf<span class="br0">&#40;</span>objFile, <span style="color: #cc66cc;">0</span><span class="br0">&#41;</span>
WScript.Echo <span style="color: #FF0000;">&quot;Date prise : &quot;</span> &amp; objFolder.GetDetailsOf<span class="br0">&#40;</span>objFile, <span style="color: #cc66cc;">161</span><span class="br0">&#41;</span>
WScript.Echo <span style="color: #FF0000;">&quot;Appareil : &quot;</span> &amp; objFolder.GetDetailsOf<span class="br0">&#40;</span>objFile, <span style="color: #cc66cc;">175</span><span class="br0">&#41;</span></pre></td></tr></table></code><hr />
</div>J'ai ce code mais malgré mes essais d'adaptation je n'y arrive pas.<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">Dim</span> objShell, objFolder, strFileName
<span style="color: #0000ff;">Set</span> objShell = CreateObject<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Shell.Application&quot;</span><span class="br0">&#41;</span>
<span style="color: #808080;">' Ouvre la bo&icirc;te de dialogue de s&eacute;lection de fichier</span>
<span style="color: #0000ff;">Set</span> objFolder = objShell.BrowseForFolder<span class="br0">&#40;</span><span style="color: #cc66cc;">0</span>, <span style="color: #FF0000;">&quot;S&eacute;lectionnez un fichier :&quot;</span>, <span style="color: #cc66cc;">&amp;H4000</span><span class="br0">&#41;</span>
&nbsp;
<span style="color: #0000ff;">If</span> <span style="color: #0000ff;">Not</span> objFolder <span style="color: #0000ff;">Is</span> <span style="color: #0000ff;">Nothing</span> <span style="color: #0000ff;">Then</span>
    strFileName = objFolder.Self.Path
    MsgBox <span style="color: #FF0000;">&quot;Vous avez s&eacute;lectionn&eacute; : &quot;</span> &amp; strFileName
<span style="color: #0000ff;">Else</span>
    MsgBox <span style="color: #FF0000;">&quot;Aucun fichier s&eacute;lectionn&eacute;.&quot;</span>
<span style="color: #0000ff;">End</span> <span style="color: #0000ff;">If</span>
&nbsp;
<span style="color: #0000ff;">Set</span> objFolder = <span style="color: #0000ff;">Nothing</span>
<span style="color: #0000ff;">Set</span> objShell = <span style="color: #0000ff;">Nothing</span></pre></td></tr></table></code><hr />
</div>@+,<br />
<br />
cincap</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f292/autres-langages/general-visual-basic-6-vbscript/vbscript/">VBScript</category>
			<dc:creator>cincap</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2181730/autres-langages/general-visual-basic-6-vbscript/vbscript/utiliser-boite-dialog-choix-dossier-fichier-win-11-64bits/</guid>
		</item>
		<item>
			<title>Créer un fichier texte pour informations Windows 11</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2181652&amp;goto=newpost</link>
			<pubDate>Thu, 22 Jan 2026 08:56:58 GMT</pubDate>
			<description>Bonjour à toutes et à tous, 
...</description>
			<content:encoded><![CDATA[<div>Bonjour à toutes et à tous,<br />
<br />
Avec mon fichier .vbs qui fonctionne, j'aimerai pouvoir aussi lire les informations depuis un fichier texte qui sera créé en parallèle.<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="33"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #808080;">' D&eacute;finir le chemin du dossier et le nom du fichier</span>
<span style="color: #0000ff;">Dim</span> dossierParent, nomFichier
dossierParent = <span style="color: #FF0000;">&quot;C:\Test\&quot;</span>
nomFichier = <span style="color: #FF0000;">&quot;Test1.jpg&quot;</span>
&nbsp;
<span style="color: #808080;">' Cr&eacute;er l'objet Shell</span>
<span style="color: #0000ff;">Set</span> objShell = CreateObject<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Shell.Application&quot;</span><span class="br0">&#41;</span>
<span style="color: #0000ff;">Set</span> objFolder = objShell.Namespace<span class="br0">&#40;</span>dossierParent<span class="br0">&#41;</span>
<span style="color: #0000ff;">Set</span> objFile = objFolder.ParseName<span class="br0">&#40;</span>nomFichier<span class="br0">&#41;</span>
&nbsp;
WScript.Echo <span style="color: #FF0000;">&quot;Fichier : &quot;</span> &amp; objFolder.GetDetailsOf<span class="br0">&#40;</span>objFile, <span style="color: #cc66cc;">0</span><span class="br0">&#41;</span>
WScript.Echo <span style="color: #FF0000;">&quot;Date prise : &quot;</span> &amp; objFolder.GetDetailsOf<span class="br0">&#40;</span>objFile, <span style="color: #cc66cc;">161</span><span class="br0">&#41;</span>
WScript.Echo <span style="color: #FF0000;">&quot;Appareil : &quot;</span> &amp; objFolder.GetDetailsOf<span class="br0">&#40;</span>objFile, <span style="color: #cc66cc;">175</span><span class="br0">&#41;</span></pre></td></tr></table></code><hr />
</div>Merci d'avance,<br />
<br />
@+,<br />
<br />
cincap</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f292/autres-langages/general-visual-basic-6-vbscript/vbscript/">VBScript</category>
			<dc:creator>cincap</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2181652/autres-langages/general-visual-basic-6-vbscript/vbscript/creer-fichier-texte-informations-windows-11-a/</guid>
		</item>
		<item>
			<title><![CDATA[Problème de casse des nom de fichiers d'une collection de fichiers]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2181283&amp;goto=newpost</link>
			<pubDate>Fri, 02 Jan 2026 23:42:08 GMT</pubDate>
			<description><![CDATA[Bonjour, 
 
J'ai un script en...]]></description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
<br />
J'ai un script en VBS qui a pour but de déplacer les fichiers dans des répertoires différents en fonction d'une partir de leur nom.<br />
EX : si le nom de fichier contient &quot;Facture&quot; il est déplacé dans le fichier Facture, si le nom contient URSSAF il est déplacé dans le répertoire des cotisations.<br />
<br />
Le script fonctionnait correctement en respectant la casse des noms fichiers, mais depuis quelques mois tous les noms de fichiers des collections (colfiles dans le script) sont systématiquement en minuscule et sans que je change une seule ligne à mon script. Or j'ai besoin que ces fichiers gardent leur casse d'origine.<br />
Quelqu'un aurait-il une idée ? une Solution SVP ?<br />
Merci d'avance.<br />
Antoine<br />
 <br />
Je vous joins mon script<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="40"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br />71<br />72<br />73<br />74<br />75<br />76<br />77<br />78<br />79<br />80<br />81<br />82<br />83<br />84<br />85<br />86<br />87<br />88<br />89<br />90<br />91<br />92<br />93<br />94<br />95<br />96<br />97<br />98<br />99<br />100<br />101<br />102<br />103<br />104<br />105<br />106<br />107<br />108<br />109<br />110<br />111<br />112<br />113<br />114<br />115<br />116<br />117<br />118<br />119<br />120<br />121<br />122<br />123<br />124<br />125<br />126<br />127<br />128<br />129<br />130<br />131<br />132<br />133<br />134<br />135<br />136<br />137<br />138<br />139<br />140<br />141<br />142<br />143<br />144<br />145<br />146<br />147<br />148<br />149<br />150<br />151<br />152<br />153<br />154<br />155<br />156<br />157<br />158<br />159<br />160<br />161<br />162<br />163<br />164<br />165<br />166<br />167<br />168<br />169<br />170<br />171<br />172<br />173<br />174<br />175<br />176<br />177<br />178<br />179<br />180<br />181<br />182<br />183<br />184<br />185<br />186<br />187<br />188<br />189<br />190<br />191<br />192<br />193<br />194<br /></div></td><td valign="top"><pre style="margin: 0">&nbsp;
<span style="color: #0000ff;">Option</span> <span style="color: #0000ff;">Explicit</span>
<span style="color: #808080;">'/////////////////////////// CONSTANTES //////////////////////</span>
&nbsp;
<span style="color: #808080;">'R&eacute;pertoire pour fichiers</span>
<span style="color: #0000ff;">Const</span> LECTEUR_C = <span style="color: #FF0000;">&quot;C:&quot;</span>
<span style="color: #0000ff;">Const</span> LECTEUR_D = <span style="color: #FF0000;">&quot;D:&quot;</span>
<span style="color: #0000ff;">Const</span> REP_FACTURES = <span style="color: #FF0000;">&quot;M:\Cabinet\Comptabilit&eacute;\2025\01-Factures\&quot;</span>
<span style="color: #0000ff;">Const</span> REP_COTIS = <span style="color: #FF0000;">&quot;M:\Cabinet\Comptabilit&eacute;\2025\02-Cotisations-charges\&quot;</span>
<span style="color: #0000ff;">Const</span> REP_TELECHARGT = <span style="color: #FF0000;">&quot;C:\Users\antoi\Downloads\&quot;</span>
<span style="color: #808080;">'Const REP_TRACES = &quot;M:\Cabinet\&quot;</span>
&nbsp;
<span style="color: #808080;">'Chemins pour requ&ecirc;tes</span>
<span style="color: #808080;">'Const REP_REQ_SCAN =&quot;'\\Cabinet\\_SCANS\\'&quot;</span>
<span style="color: #0000ff;">Const</span> REP_REQ_SCAN =<span style="color: #FF0000;">&quot;'\\Cabinet\\_SCANS\\TEST\\'&quot;</span>
<span style="color: #0000ff;">Const</span> REP_REQ_TELECHARGT =<span style="color: #FF0000;">&quot;'\\Users\\antoi\\Downloads\\'&quot;</span>
<span style="color: #0000ff;">Const</span> REP_REQ_PRO =<span style="color: #FF0000;">&quot;'\\Users\\antoi\\Downloads\\Professionnel\\'&quot;</span>
<span style="color: #808080;">'Const REP_FACTURES = &quot;M:\Cabinet\Comptabilit&quot; &amp; chr(233) &amp; &quot;\&quot;</span>
<span style="color: #808080;">'Dim REP_FACTURES</span>
<span style="color: #808080;">'REP_FACTURES = &quot;M:\Cabinet\Comptabilit&quot; &amp; chr(233) &amp; &quot;\&quot;</span>
&nbsp;
<span style="color: #808080;">'/////////////////////////// VARIABLES ///////////////////////</span>
<span style="color: #0000ff;">Dim</span> fsot
<span style="color: #0000ff;">Dim</span> fichierLog
<span style="color: #0000ff;">Dim</span> Test
&nbsp;
<span style="color: #0000ff;">Dim</span> Shell
<span style="color: #0000ff;">Dim</span> oShell
<span style="color: #0000ff;">Dim</span> env
<span style="color: #0000ff;">Dim</span> objWMIService
<span style="color: #0000ff;">Dim</span> colFiles
<span style="color: #0000ff;">Dim</span> strComputer
<span style="color: #0000ff;">Dim</span> objFile
<span style="color: #0000ff;">Dim</span> requete
&nbsp;
<span style="color: #0000ff;">Dim</span> chemin
<span style="color: #0000ff;">Dim</span> repScan
<span style="color: #0000ff;">Dim</span> repTelechargement
<span style="color: #0000ff;">Dim</span> repPro
<span style="color: #0000ff;">Dim</span> repCopie
<span style="color: #0000ff;">Dim</span> repCible
&nbsp;
<span style="color: #0000ff;">Dim</span> errOpeFile
<span style="color: #808080;">'FIN DECLARATION DES VARIABLES</span>
&nbsp;
&nbsp;
<span style="color: #808080;">'/////////////////////////// PROCEDURES ///////////////////////////////////////</span>
<span style="color: #808080;">'******************************************</span>
<span style="color: #808080;">' Proc&eacute;dure d'ouverture du fichier de logs</span>
<span style="color: #808080;">'******************************************</span>
<span style="color: #0000ff;">Sub</span> OuvertureLog <span class="br0">&#40;</span><span class="br0">&#41;</span>
&nbsp;
	<span style="color: #0000ff;">Dim</span> repLog
	<span style="color: #0000ff;">Dim</span> nomFichierLog
	<span style="color: #0000ff;">Dim</span> monLog
&nbsp;
	<span style="color: #0000ff;">Const</span> ForReading = <span style="color: #cc66cc;">1</span>, ForWriting = <span style="color: #cc66cc;">2</span>, ForAppending = <span style="color: #cc66cc;">8</span>
	<span style="color: #0000ff;">Const</span> TristateUseDefault = <span style="color: #cc66cc;">-2</span>, TristateTrue = <span style="color: #cc66cc;">-1</span>, TristateFalse = <span style="color: #cc66cc;">0</span>
&nbsp;
	<span style="color: #0000ff;">Set</span> fsot = WScript.CreateObject<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Scripting.FileSystemObject&quot;</span><span class="br0">&#41;</span>
&nbsp;
	<span style="color: #808080;">'repLog = REP_TRACES</span>
	repLog = REP_TELECHARGT
	nomFichierLog = <span style="color: #FF0000;">&quot;Log_Fichiers_EC.log&quot;</span>
&nbsp;
	MsgBox repLog &amp; nomFichierLog
	<span style="color: #0000ff;">Set</span> fichierLog = fsot.OpenTextFile<span class="br0">&#40;</span>repLog &amp; nomFichierLog, ForAppending, TristateTrue<span class="br0">&#41;</span>
&nbsp;
	<span style="color: #808080;">'monLog = Now &amp; &quot; - &quot; &amp; &quot;Ouverture du fichier traces&quot;</span>
	<span style="color: #808080;">'fichierLog.WriteLine(monLog)</span>
&nbsp;
<span style="color: #0000ff;">End</span> <span style="color: #0000ff;">sub</span>
&nbsp;
<span style="color: #808080;">'******************************************</span>
<span style="color: #808080;">' Proc&eacute;dure d'&eacute;criture de log</span>
<span style="color: #808080;">'******************************************</span>
<span style="color: #0000ff;">Sub</span> TracesLog <span class="br0">&#40;</span>messageTrace<span class="br0">&#41;</span>
&nbsp;
	<span style="color: #0000ff;">Dim</span> monLog
&nbsp;
	monLog = Now &amp; <span style="color: #FF0000;">&quot; - &quot;</span> &amp; messageTrace
	fichierLog.WriteLine<span class="br0">&#40;</span>monLog<span class="br0">&#41;</span>
&nbsp;
<span style="color: #0000ff;">End</span> <span style="color: #0000ff;">Sub</span>
&nbsp;
&nbsp;
<span style="color: #808080;">'******************************************</span>
<span style="color: #808080;">' Proc&eacute;dure de d&eacute;palcement de fichiers</span>
<span style="color: #808080;">'******************************************</span>
<span style="color: #0000ff;">Sub</span> DeplacerFichiers<span class="br0">&#40;</span>collFichiers, repCible, Test<span class="br0">&#41;</span>
&nbsp;
<span style="color: #0000ff;">Dim</span> Proc
Proc = <span style="color: #FF0000;">&quot;DeplacerFichiers&quot;</span>
&nbsp;
&nbsp;
<span style="color: #0000ff;">On</span> <span style="color: #0000ff;">Error</span> <span style="color: #0000ff;">Resume</span> <span style="color: #0000ff;">Next</span>
Err.Clear
&nbsp;
	<span style="color: #0000ff;">For</span> <span style="color: #0000ff;">Each</span> objFile <span style="color: #0000ff;">in</span> collFichiers
		<span style="color: #808080;">'Wscript.Echo &quot;Dossier =&gt; &quot; &amp; objFile.Drive &amp; objFile.Path</span>
		<span style="color: #808080;">'Wscript.Echo &quot;Taille  =&gt;x &quot; &amp; objFile.FileSize &amp; &quot; Octets&quot;</span>
		<span style="color: #808080;">'Wscript.Echo &quot;Nom     =&gt; &quot; &amp; objFile.FileName &amp; &quot;.&quot; &amp; objFile.Extension</span>
&nbsp;
		TracesLog<span class="br0">&#40;</span>Proc &amp; <span style="color: #FF0000;">&quot; &gt;&gt;&gt; Ficher : &quot;</span> &amp; objFile.FileName &amp; <span style="color: #FF0000;">&quot;.&quot;</span> &amp; objFile.Extension<span class="br0">&#41;</span>
		repCopie = repCible &amp;  objFile.FileName &amp; <span style="color: #FF0000;">&quot;.&quot;</span> &amp; objFile.Extension
		TracesLog<span class="br0">&#40;</span>Proc &amp; <span style="color: #FF0000;">&quot;Rep destination =&gt; &quot;</span> &amp; repCopie<span class="br0">&#41;</span>
&nbsp;
		<span style="color: #0000ff;">If</span> Test = <span style="color: #0000ff;">False</span> <span style="color: #0000ff;">Then</span>
			errOpeFile = objFile.copy<span class="br0">&#40;</span>repCopie, <span style="color: #0000ff;">True</span><span class="br0">&#41;</span>
			TracesLog<span class="br0">&#40;</span>Proc &amp; <span style="color: #FF0000;">&quot;errOpeFile =&gt; &quot;</span> &amp; errOpeFile<span class="br0">&#41;</span>
			<span style="color: #0000ff;">if</span> errOpeFile = <span style="color: #cc66cc;">0</span> <span style="color: #0000ff;">then</span>
				objFile.delete
				TracesLog<span class="br0">&#40;</span>Proc &amp; <span style="color: #FF0000;">&quot;Suppression du fichier&quot;</span><span class="br0">&#41;</span>
			<span style="color: #0000ff;">Else</span>
				TracesLog<span class="br0">&#40;</span>Proc &amp; <span style="color: #FF0000;">&quot;Erreur n&deg; : &quot;</span> &amp; Err.Number &amp; <span style="color: #FF0000;">&quot; - &quot;</span> &amp; Err.Description<span class="br0">&#41;</span>
			<span style="color: #0000ff;">End</span> <span style="color: #0000ff;">if</span>
		<span style="color: #0000ff;">Else</span>
&nbsp;
		<span style="color: #0000ff;">End</span> <span style="color: #0000ff;">if</span>
	<span style="color: #0000ff;">Next</span>
&nbsp;
<span style="color: #0000ff;">End</span> <span style="color: #0000ff;">Sub</span>
<span style="color: #808080;">'/////////////////////////// FONCTIONS ////////////////////////////////////////</span>
&nbsp;
&nbsp;
<span style="color: #808080;">'******************************************************************************</span>
<span style="color: #808080;">' *** DEBUT DU SCRIPT ***</span>
<span style="color: #808080;">'******************************************************************************</span>
&nbsp;
<span style="color: #808080;">'*** Configuration des variables d'environnement</span>
OuvertureLog<span class="br0">&#40;</span><span class="br0">&#41;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot; ///// DEMARRAGE DU SCRIPT ///// &quot;</span><span class="br0">&#41;</span>
&nbsp;
<span style="color: #0000ff;">Set</span> Shell = CreateObject<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;wscript.Shell&quot;</span><span class="br0">&#41;</span>
<span style="color: #0000ff;">Set</span> env = Shell.environment<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Process&quot;</span><span class="br0">&#41;</span>
strComputer = env.Item<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Computername&quot;</span><span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;">'\root\cimv2 = namespace (BDD logique) contenant des groupes de classes</span>
<span style="color: #808080;">'WQL = langage d'interrogation de type SQL modifi&eacute; ; interroge des classes et renvoie des classes</span>
<span style="color: #0000ff;">set</span> objWMIService = GetObject<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;winmgmts:\\&quot;</span> &amp; strComputer &amp; <span style="color: #FF0000;">&quot;\root\cimv2&quot;</span><span class="br0">&#41;</span>
&nbsp;
&nbsp;
<span style="color: #808080;">'FICHIERS LOYER, URSSAF</span>
<span style="color: #808080;">'****************************</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;DEBUT TRAITEMENT FICHERS LOYER, URSSAF&quot;</span><span class="br0">&#41;</span>
repScan = REP_REQ_SCAN
requete = <span style="color: #FF0000;">&quot;Select * from CIM_DataFile Where Drive = 'D:' and Path = &quot;</span> &amp; repScan &amp; <span style="color: #FF0000;">&quot;and (FileName like '%SGA Loyer%' OR FileName like '%URSSAF%')&quot;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Requ&ecirc;te : &quot;</span> &amp; requete<span class="br0">&#41;</span>
<span style="color: #0000ff;">set</span> colFiles = objWMIService.ExecQuery <span class="br0">&#40;</span>requete<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;">'Traitement en lien avec l'encodage et les accents le script est en UTF8 et window en windows 1250 (chr(233) = &quot;&eacute;&quot;</span>
chemin = Replace<span class="br0">&#40;</span>REP_COTIS,<span style="color: #FF0000;">&quot;&eacute;&quot;</span>,chr<span class="br0">&#40;</span><span style="color: #cc66cc;">233</span><span class="br0">&#41;</span><span class="br0">&#41;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;chemin = &quot;</span> &amp; chemin<span class="br0">&#41;</span>
DeplacerFichiers colFiles, chemin, <span style="color: #0000ff;">False</span>
&nbsp;
<span style="color: #808080;">'FICHIERS FACTURES</span>
<span style="color: #808080;">'*****************</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;DEBUT TRAITEMENT FICHERS FACTURES : REPERTOIRE TELECHARGEMENT&quot;</span><span class="br0">&#41;</span>
repScan = REP_REQ_TELECHARGT
requete = <span style="color: #FF0000;">&quot;Select * from CIM_DataFile Where Drive = 'D:' and Path = &quot;</span> &amp; repScan &amp; <span style="color: #FF0000;">&quot;and FileName like '% Facture%'&quot;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Requ&ecirc;te : &quot;</span> &amp; requete<span class="br0">&#41;</span>
<span style="color: #0000ff;">set</span> colFiles = objWMIService.ExecQuery <span class="br0">&#40;</span>requete<span class="br0">&#41;</span>
&nbsp;
<span style="color: #808080;">'Traitement en lien avec l'encodage et les accents le script est en UTF8 et window en windows 1250 (chr(233) = &quot;&eacute;&quot;</span>
chemin = Replace<span class="br0">&#40;</span>REP_FACTURES,<span style="color: #FF0000;">&quot;&eacute;&quot;</span>,chr<span class="br0">&#40;</span><span style="color: #cc66cc;">233</span><span class="br0">&#41;</span><span class="br0">&#41;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;chemin = &quot;</span> &amp; chemin<span class="br0">&#41;</span>
DeplacerFichiers colFiles, chemin, <span style="color: #0000ff;">False</span>
&nbsp;
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;DEBUT TRAITEMENT FICHERS FACTURES : R&Eacute;PERTOIRE _SCANS&quot;</span><span class="br0">&#41;</span>
repScan = REP_REQ_SCAN
requete = <span style="color: #FF0000;">&quot;Select * from CIM_DataFile Where Drive = 'D:' and Path = &quot;</span> &amp; repScan &amp; <span style="color: #FF0000;">&quot;and FileName like '% Facture%'&quot;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;Requ&ecirc;te : &quot;</span> &amp; requete<span class="br0">&#41;</span>
<span style="color: #0000ff;">set</span> colFiles = objWMIService.ExecQuery <span class="br0">&#40;</span>requete<span class="br0">&#41;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot;chemin = &quot;</span> &amp; chemin<span class="br0">&#41;</span>
DeplacerFichiers colFiles, chemin, <span style="color: #0000ff;">False</span>
&nbsp;
&nbsp;
<span style="color: #808080;">' Destruction des objets</span>
<span style="color: #0000ff;">Set</span> Shell = <span style="color: #0000ff;">Nothing</span>
<span style="color: #0000ff;">Set</span> env = <span style="color: #0000ff;">Nothing</span>
&nbsp;
&nbsp;
<span style="color: #808080;">'///////////////////////////////// FIN DU SCRIPT /////////////////////////////</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot; ///// FIN DU SCRIPT //////&quot;</span><span class="br0">&#41;</span>
TracesLog<span class="br0">&#40;</span><span style="color: #FF0000;">&quot; ***&quot;</span><span class="br0">&#41;</span>
MsgBox <span style="color: #FF0000;">&quot;Fin du script !&quot;</span>, vbOKOnly + vbInformation, <span style="color: #FF0000;">&quot;Informations&quot;</span>
<span style="color: #0000ff;">Set</span> fsot = <span style="color: #0000ff;">Nothing</span>
&nbsp;
<span style="color: #0000ff;">Set</span> oShell = WScript.CreateObject <span class="br0">&#40;</span><span style="color: #FF0000;">&quot;WScript.Shell&quot;</span><span class="br0">&#41;</span>
<span style="color: #808080;">'In VBScript, string literals are surrounded by double quotes</span>
oShell.run <span style="color: #FF0000;">&quot;&quot;</span><span style="color: #FF0000;">&quot;%ProgramFiles%\Notepad++\notepad++.exe &quot;</span><span style="color: #FF0000;">&quot;C:\Users\antoi\Downloads\Log_Fichiers_EC.log&quot;</span><span style="color: #FF0000;">&quot; &quot;</span>
<span style="color: #0000ff;">Set</span> oShell = <span style="color: #0000ff;">Nothing</span>
&nbsp;
WScript.Quit</pre></td></tr></table></code><hr />
</div></div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f292/autres-langages/general-visual-basic-6-vbscript/vbscript/">VBScript</category>
			<dc:creator>Ale14</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2181283/autres-langages/general-visual-basic-6-vbscript/vbscript/probleme-casse-nom-fichiers-d-collection-fichiers/</guid>
		</item>
	</channel>
</rss>
