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: 7795
Joined: 29 Sep 2013, 17:08
Facebook: J0EDF
Google: +joedf
GitHub: joedf
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

Return to “J'ai besoin d'aide”

Who is online

Users browsing this forum: No registered users and 3 guests