Boucle dans fichier excel avec variable Topic is solved

Poser vos questions de programmation en AutoHotkey
Celine36
Posts: 2
Joined: 12 Aug 2020, 02:11

Boucle dans fichier excel avec variable

12 Aug 2020, 02:29

Bonjour,

Je suis débutante en AutoHotKey et depuis deux jours je rencontre un problème... Je souhaite boucler sur des colonnes et des lignes dans un fichier excel. Jusqu'ici tout va bien ! Sauf que je souhaite mettre le nombre de colonne sur lesquelles je boucle en variable. Je récupère le nombre de colonne par un InputBox, mais dès que je met la variable "test" dans xls.ActiveSheet.Cells(row,test) cela ne fonctionne plus.... J'ai l'erreur 0x800A03EC avec en spécificité "Cells".

Voici le code :

Code: Select all

; Sélection nombre de maille
InputBox, userinput, Nombre de maille, Veuillez entrer un nombre de maille :, , 250 , 125

xls := ComObjCreate("Excel.Application")
xls.Visible := true
xls.Workbooks.Open(SelectedFile)
					
col_debut = 4
row_debut = 9 

test = %userinput%

Loop 47
{
	row := A_Index + row_debut
												
	For cell in xls.ActiveSheet.Range(xls.ActiveSheet.Cells(row,col_debut),xls.ActiveSheet.Cells(row,test)) {
						
		MsgBox, % "Row:" . row . " Col:" . A_Index . " Value:" . cell.Text
							
	}
	
}					
J'espère avoir été claire...

Je vous remercie pour vos réponses,
Celine36
Posts: 2
Joined: 12 Aug 2020, 02:11

Re: Boucle dans fichier excel avec variable  Topic is solved

12 Aug 2020, 09:10

Finalement, j'ai réussi ! :D

Code: Select all


xls 		:= ComObjCreate("Excel.Application")
xls.Visible := true
xls.Workbooks.Open(SelectedFile)	

InputBox, nb_maille, Nombre de maille, Veuillez entrer un nombre de maille :, , 250 , 125

row_debut 	:= 1 
row_fin 		:= 4

Loop %nb_maille%
{
															
	colum_current := A_Index
																			
	For cell in xls.ActiveSheet.Range(xls.ActiveSheet.Cells(row_debut,A_Index),xls.ActiveSheet.Cells(row_fin,A_Index)) { 																										
																																
		MsgBox, % "Row:" . A_Index . " Col:" . colum_current . " Value:" . cell.Text								
									
	}
								
}

User avatar
joedf
Posts: 8962
Joined: 29 Sep 2013, 17:08
Location: Canada
Contact:

Re: Boucle dans fichier excel avec variable

12 Aug 2020, 15:16

Cool :+1:
Tu peux aussi tous les imprimer d'un coup (1 msgbox) de cette façon:

Code: Select all

xls 		:= ComObjCreate("Excel.Application")
xls.Visible := true
xls.Workbooks.Open(SelectedFile)

InputBox, nb_maille, Nombre de maille, Veuillez entrer un nombre de maille :, , 250 , 125

row_debut 	:= 1 
row_fin 	:= 4

resultats := ""

Loop %nb_maille%
{
	colum_current := A_Index
	
	For cell in xls.ActiveSheet.Range(xls.ActiveSheet.Cells(row_debut,A_Index),xls.ActiveSheet.Cells(row_fin,A_Index)) {
	
		resultats .= "Row:" . A_Index . " Col:" . colum_current . " Value:" . cell.Text	. "`n"
	
	}
}

MsgBox % resultats
Image Image Image Image Image
Windows 10 x64 Professional, Intel i5-8500, NVIDIA GTX 1060 6GB, 2x16GB Kingston FURY Beast - DDR4 3200 MHz | [About Me] | [About the AHK Foundation] | [Courses on AutoHotkey]
[ASPDM - StdLib Distribution] | [Qonsole - Quake-like console emulator] | [LibCon - Autohotkey Console Library]

Return to “J'ai besoin d'aide”

Who is online

Users browsing this forum: No registered users and 94 guests