ACCESS数据库中Field对象的caption属性读写
本文章🐶说明如何用【hé yòng】🎫VBA读写该属性【shǔ xìng】😱。 可惜Field对象【duì xiàng】🔠的CAPTION属性【shǔ xìng】并✔不是🔴ADO原生对象【duì xiàng】🔠,而是🎀“可由ADO访问的【fǎng wèn de】🐁ACCESS属性【shǔ xìng】😱”,在帮助文档中🌇介绍了【jiè shào le】两种访【liǎng zhǒng fǎng】问这个【wèn zhè gè】属性【shǔ xìng】😱的方法💭,一种利【yī zhǒng lì】用【yòng】ADO,一种利【yī zhǒng lì】用【yòng】DAO,在这里【zài zhè lǐ】我直接🔲说出【chū】结果,由于在【yóu yú zài】ACCESS2003及以前的版本中Field对象【duì xiàng】🔠并不是🔴ACCESSObject对象【duì xiàng】🔠,因而也【yīn ér yě】🔰就没有😦AccessObjectProperties属性【shǔ xìng】😱,所以我们也就别想在ADO中去解【zhōng qù jiě】🌥决这个😓问题吧,现在给出【chū】DAO的代码【de dài mǎ】🎋解决办法
SubSetProperty(dbsTempAsDAO.Field,strNameAsString,_ booTempAsString) DimprpNewAsDAO.Property DimerrLoopAsError 'Attempttosetthespecifiedproperty.
OnErrorGoToErr_Property dbsTemp.Properties(strName)=booTemp OnErrorGoTo0 ExitSub Err_Property:
'Error3270meansthatthepropertywasnotfound. IfDBEngine.Errors(0).Number=3270Then
'Createproperty,setitsvalue,andappendittothe 'Propertiescollection.
SetprpNew=dbsTemp.CreateProperty(strName,_ dbText,booTemp)
dbsTemp.Properties.AppendprpNew ResumeNext Else
'Ifdifferenterrorhasoccurred,displaymessage. ForEacherrLoopInDBEngine.Errors
MsgBox"Errornumber:"&errLoop.Number&VBCr&_ errLoop.Description NexterrLoop End EndIf
EndSub SubDisplayClumCaption(ByValtbnameAsString,ByValfldIndexAsInteger)
DimdsetAsDAO.TableDef) //*****必须使用🐖TableDef对象【duì xiàng】
DimiAsIntegerDimtmpPropAsDAO.Property //强制使用【yòng】🌄DAO类型
DimfldAsDAO.Field //强制使【qiáng zhì shǐ】用DAO类型⏳DimtmpTxtAsString'OnErrorResumeNext
DimmsgAsStringDimcdbAsDAO.Database //*****强制使【qiáng zhì shǐ】用👄DAO类型
Setcdb=CurrentDb //****关键【guān jiàn】,确定对【què dìng duì】🧡当前数据库的静态引用📐
Setdset=cdb.TableDefs(tbname)//*****必须使【bì xū shǐ】🐴用TableDef对象
ForEachfldIndset.Fields tmpTxt=fld.Name SetPropertyfld,"Caption",tmpTxt msg=msg fld.Properties("Caption")
msg=msg Chr(10) Chr(13) Nextfld MsgBoxmsgEndSub
这里代🥦码中有两个【liǎng gè】SUB,一个是📁SetProperty,用来判【yòng lái pàn】🌳断一个字段是🐜否有指【fǒu yǒu zhǐ】🚭定的属【dìng de shǔ】⏰性【xìng】✌,如果没有设置,有就将相应的【xiàng yīng de】数值赋给该属【gěi gāi shǔ】性【xìng】🏗,这段代【zhè duàn dài】码几乎🚅完全是照搬🗾MS的帮助文档【wén dàng】🍒。另一个是📁DisplayClumCaption,这是对【zhè shì duì】指定表中的字段按字段名设置其♊CAPTION属性的【shǔ xìng de】🏿演示代码。如果有【rú guǒ yǒu】🎨需要【xū yào】,大家可💍以对SetProperty进行修改,使他变【shǐ tā biàn】成一个只读的📇函数,用来枚举指定【jǔ zhǐ dìng】表中每个字段的CAPTION属性【xìng】🏗。DisplayClumCaption代码中,我打【wǒ dǎ】“星号”的地方【de dì fāng】📳是要重点注意【diǎn zhù yì】的,因为我在这里曾走过弯路【wān lù】🎫,浪费了一个下🧘午的时【wǔ de shí】间在⛳MSDN中游荡。
关键词:ACCESS,数据库
阅读本文后您有什么感想? 已有 人给出评价!
- 1
- 1
- 1
- 1
- 1
- 1