/// <summary> /// Génère une liste de liqne pointant sur les lignes choisi pour faire partie de l'échantillon de manière systematique /// </summary> /// <param name="e"></param> private void GetSystematicNumber(ExcelWrapper e) { int Step = e.GetNbRows() - 1 / (int)NUD_Taille.Value; int Nrandom = GenerateRandom(Step) + 1; Number[0] = Nrandom; for (int i = 1; i < NUD_Taille.Value; i++) { Number[i] = Nrandom + Step * i; } }
/// <summary> /// Génère une liste de liqne pointant sur les lignes choisi pour faire partie de l'échantillon de manière aléatoire /// </summary> /// <param name="e"></param> private void GetRandomNumber(ExcelWrapper e) { int Rnumber; for (int i = 0; i < NUD_Taille.Value; i++) { do { Rnumber = GenerateRandom(e.GetNbRows() - 1) + 1; } while (Verif(Number, Rnumber)); Number[i] = Rnumber; } }
private String[,] ReadInfo(ExcelWrapper EW, int[] Ligne) { String[,] Data = new String [Ligne.Length, EW.GetnbColumns()]; String[] carry = new String[EW.GetnbColumns()]; int w = 0; //pas le choix sinon avec ma boucle je commence a 0 et boom for (int i = 0; i < Ligne.Length; i++) { carry = EW.GetLine(Ligne[w]); //out of range ici je sais pas encore pourquoi for (int j = 0; j < EW.GetnbColumns(); j++) { Data[i, j] = carry[j]; } w++; } return(Data); }
private void BT_Executer_Click(object sender, EventArgs e) { Number = new int[int.Parse(NUD_Taille.Value.ToString())]; ExcelWrapper EW = new ExcelWrapper(Sources, Destination); ExcelWrapper Ewr = new ExcelWrapper(Sources, Destination); EW.Open(); if (RB_Simple.Checked) { AleatoirFunction(EW); } else { SystematiqueFunction(EW); } for (int i = 0; i < NUD_Copie.Value; i++) { Ewr.Write(ReadInfo(EW, Number), int.Parse(NUD_Taille.Value.ToString()), EW.GetnbColumns(), TB_Nom.Text + (i + 1)); } EW.Close(); Ewr.Close(); }
private void AleatoirFunction(ExcelWrapper EW) { GetRandomNumber(EW); }
private void SystematiqueFunction(ExcelWrapper EW) { GetSystematicNumber(EW); }