ÁíÀà¶Áд£ºACCESSÖÐField¶ÔÏóµÄ±êÌâÊôÐÔ

¡¶ÁíÀà¶Áд£ºACCESSÖÐField¶ÔÏóµÄ±êÌâÊôÐÔ¡·ÕªÒª£º ACCESSÊý¾Ý¿âÖÐField¶ÔÏóµÄcaptionÊôÐÔ£¨Ò²¾ÍÊDZêÌ⣩ÊÇÓÃÀ´ÉèÖÃÊý¾Ý×ֶεıêÌ⣬ÔÚÕý³£µÄÊý¾Ý¿âÉè¼ÆÖÐΪÁ˱£³Öά»¤µÄ±ãÀûÐÔ£¬Ðí¶à¿ª·¢Õß¶¼½«×Ö¶ÎÃûÓë±êÌâ×öÁË·Ö±ðÉèÖ㬱êÌâÍùÍù±È×Ö¶ÎÃû¸üÓѺ¡­

ACCESSÊý¾Ý¿âÖÐField¶ÔÏóµÄcaptionÊôÐÔ£¨Ò²¾ÍÊDZêÌ⣩ÊÇÓÃÀ´ÉèÖÃÊý¾Ý×ֶεıêÌ⣬ÔÚÕý³£µÄÊý¾Ý¿âÉè¼ÆÖÐΪÁ˱£³Öά»¤µÄ±ãÀûÐÔ£¬Ðí¶à¿ª·¢Õß¶¼½«×Ö¶ÎÃûÓë±êÌâ×öÁË·Ö±ðÉèÖ㬱êÌâÍùÍù±È×Ö¶ÎÃû¸üÓѺ㬸üÄÜ˵Ã÷×ֶεÄÓÃ;¡£±¾Æª´ÓÁíÒ»¸ö½Ç¶ÈÀ´ËµÃ÷ÈçºÎÓã֣£Á¶Áд¸ÃÊôÐÔ¡£

Field¶ÔÏóµÄCAPTIONÊôÐÔ²¢²»ÊÇADOÔ­Éú¶ÔÏ󣬶øÊÇ“¿ÉÓÉADO·ÃÎʵÄACCESSÊôÐÔ”£¬ÔÚ°ïÖúÎĵµÖнéÉÜÁËÁ½ÖÖ·ÃÎÊÕâ¸öÊôÐԵķ½·¨£¬Ò»ÖÖÀûÓÃADO£¬Ò»ÖÖÀûÓÃDAO£¬ÓÉÓÚÔÚACCESS2003¼°ÒÔǰµÄ°æ±¾ÖÐField¶ÔÏó²¢²»ÊÇACCESSObject¶ÔÏó£¬Òò¶øÒ²¾ÍûÓÐAccessObjectProperties ÊôÐÔ£¬ËùÒÔÎÒÃÇÒ²¾Í²»ÄÜÔÚADOÖÐÈ¥½â¾öÕâ¸öÎÊÌ⣬ÏÖÔÚÓÃÁíÒ»ÖÖ·½Ê½À´½â¾öDAOµÄ´úÂë¡£

Sub SetProperty(dbsTemp As DAO.Field, strName As String, _
   booTemp As String)
   Dim prpNew As DAO.Property
   Dim errLoop As Error
   ' Attempt to set the specified property.
   On Error GoTo Err_Property
   dbsTemp.Properties(strName) = booTemp
   On Error GoTo 0
   Exit Sub
Err_Property:
   ' Error 3270 means that the property was not found.
   If DBEngine.Errors(0).Number = 3270 Then
      ' Create property, set its value, and append it to the
      ' Properties collection.
      Set prpNew = dbsTemp.CreateProperty(strName, _
         dbText, booTemp)
      dbsTemp.Properties.Append prpNew
      Resume Next
   Else
      ' If different error has occurred, display message.
      For Each errLoop In DBEngine.Errors
         MsgBox "Error number: " & errLoop.Number & vbCr & _
            errLoop.Description
      Next errLoop
      End
   End If
End Sub
Sub DisplayClumCaption(ByVal tbname As String,
 ByVal fldIndex As Integer)
Dim dset As DAO.TableDef) //*****±ØÐëʹÓÃTableDef¶ÔÏó
Dim i As Integer
Dim tmpProp As DAO.Property   //Ç¿ÖÆÊ¹ÓÃDAOÀàÐÍ
Dim fld As DAO.Field    //Ç¿ÖÆÊ¹ÓÃDAOÀàÐÍ
Dim tmpTxt As String
'On Error Resume Next
Dim msg As String
Dim cdb As DAO.Database //*****Ç¿ÖÆÊ¹ÓÃDAOÀàÐÍ
Set cdb = CurrentDb //****¹Ø¼ü£¬È·¶¨¶Ôµ±Ç°Êý¾Ý¿âµÄ¾²Ì¬ÒýÓÃ
Set dset = cdb.TableDefs(tbname)//*****±ØÐëʹÓÃTableDef¶ÔÏó
 For Each fld In dset.Fields
    tmpTxt = fld.Name
    SetProperty fld, "Caption", tmpTxt
    msg = msg + fld.Properties("Caption")
    msg = msg + Chr(10) + Chr(13)
 Next fld
 MsgBox msg
End Sub

ÔÚÒÔÉϲ¿·ÖµÄ´úÂëÖÐÓÐÁ½¸öSUB£¬Ò»¸öÊÇSetProperty £¬ÓÃÀ´ÅжÏÒ»¸ö×Ö¶ÎÊÇ·ñÓÐÖ¸¶¨µÄÊôÐÔ£¬Èç¹ûûÓÐÉèÖ㬾ͽ«ÏàÓ¦µÄÊýÖµ¸³¸ø¸ÃÊôÐÔ¡£ÁíÒ»¸öÊÇDisplayClumCaption£¬ÕâÊǶÔÖ¸¶¨±íÖеÄ×ֶΰ´×Ö¶ÎÃûÉèÖÃÆäCAPTIONÊôÐÔµÄÑÝʾ´úÂë¡£Èç¹ûÓÐÐèÒª£¬´ó¼Ò¿ÉÒÔ¶ÔSetProperty½øÐÐÐ޸ģ¬Ê¹Ëû±ä³ÉÒ»¸öÖ»¶ÁµÄº¯Êý£¬ÓÃÀ´Ã¶¾ÙÖ¸¶¨±íÖÐÿ¸ö×ֶεÄCAPTIONÊôÐÔ¡£DisplayClumCaption´úÂëÖУ¬´ò“ÐǺŔµÄµØ·½ÊÇÒªÖØµã×¢ÒâµÄ£¬²»È»¿ÉÄÜ»áÔÚMSDNÖжà×ßÍä·¡£

ÄãµÄλÖ㺵çÄÔ¹ÊÕÏÍø >> Êý¾Ý¿â >> Access >> ÁíÀà¶Áд£ºACCESSÖÐField¶ÔÏóµÄ±êÌâÊôÐÔ