SubGestionImpressionCarnet(Optionalp_s_refOFAsVariant,Optionalp_s_refRadeauAsVariant)Diml_s_messAsStringDiml_s_sqlAsStringDiml_reAsNewadodb.RecordsetDiml_i_CarnetAsIntegerOnErrorGoToGestionImpressionCarnet_errl_s_sql="SELECT*FROMT_RADEAUXWHERE"If(NotIsMissing(p_s_refRadeau))Thenl_s_sql=l_s_sql&"C_NumRadeaux="&TextSQL(p_s_refRadeau)&""Else'Cherchertouslesradeauxquiappartiennent?cetOFpliagel_s_sql=l_s_sql&"C_NumOFPliage="&TextSQL(p_s_refOF)&"ANDC_Carnet<2"l_s_sql=l_s_sql&"ORDERBYC_IdOrdre"EndIfl_re.Openl_s_sql,g_db_new,adOpenDynamic,adLockPessimistic'Siln'yapasd'enregistrementIfl_re.EOFThen'LedireMsgBox"Iln'yapasderadeauxdontlecarnetdoit阾reimprim?EndIf'BouclesurtouslesenregistrementsDoWhileNotl_re.EOF'Combiendecarnetrestet'il?imprimerl_i_Carnet=l_re!C_CarnetForl_i_boucle=(l_i_CarnetMod2)To1l_s_mess="Impressionducarnet"If(l_i_boucleMod2)=0Thenl_s_mess=l_s_mess&"rouge"Elsel_s_mess=l_s_mess&"bleu"EndIfl_s_mess=l_s_mess&"duradeau"&l_re!C_NumRadeaux&vbCrLf&vbCrLfl_s_mess=l_s_mess&"Quandlevoyantvertclignote..."&vbCrLfl_s_mess=l_s_mess&"-Posezlefasciculesurlatabletted'introduction."&vbCrLfl_s_mess=l_s_mess&"-Plaquezlefasciculecontrelabut闲gauche."&vbCrLfl_s_mess=l_s_mess&"-Amenez関entuellementleguidededroitecontreledocument."&vbCrLfl_s_mess=l_s_mess&"-Poussezlefasciculejusqu'acequ'ilsoitentrain?."&vbCrLfl_s_mess=l_s_mess&"-Attendrequelefasciculesoit閖ect?apr镳impression"&vbCrLf&vbCrLfl_s_mess=l_s_mess&"Encasd'incidentencoursd'impression"&vbCrLfl_s_mess=l_s_mess&"Appuyezsur[CONNEX]puissur[EJECT]"l_s_mess=l_s_mess&"dansl'imprimante"l_i_ret=MsgBox(l_s_mess,vbOKCancel,"Impression")'S'ilachoisid'annulerIf(l_i_ret=vbCancel)Then'SortirdelaboucleExitDoEndIf'Lancerl'impressionducarnetl_b_ret=ImprimerCarnet(l_re!C_NumRadeaux)'Sil'impressionestOKIf(l_b_ret=True)Thenl_re!C_Carnet=l_re!C_Carnet 1l_re.UpdateElse'SortirdelaboucleExitDoEndIfNextl_re.MoveNextLoopl_re.CloseExitSubPublicFunctionTextSQL(ByValp_s_textAsString)AsStringDiml_i_posAsIntegerl_i_pos=1Dol_i_pos=InStr(l_i_pos,p_s_text,"'")Ifl_i_pos=0ThenExitDoEndIfp_s_text=Left$(p_s_text,l_i_pos)&"'"&Mid$(p_s_text,l_i_pos 1)l_i_pos=l_i_pos 2LoopTextSQL="'" p_s_text "'"EndFunction
参考答案:SubGestionImpressionCarnet(Optionalp_s_refOFAsVariant,Optionalp_s_refRadeauAsVariant) Diml_s_messAsString Diml_s_sqlAsString Diml_reAsNewadodb.Recordset Diml_i_CarnetAsInteger
定义函数 (Sub过程是一个可以获取参数,执行一系列语句以及可改变其参数的值的独立过程。而与Function过程不同之处是:Function过程可以返回值,而Sub过程不能用于表达式中) 定义变量及类型
l_s_sql="SELECT*FROMT_RADEAUXWHERE" If(NotIsMissing(p_s_refRadeau))Then l_s_sql=l_s_sql |