精华内容
下载资源
问答
  • 而数据导入要生成一个模板,模板中有些字段是需要固定那几种的,比如产品分类,如果让用户直接填写id号的话用户可能不知所云,很有可能会填错,这样唯一的解决办法就是使用下拉菜单,就是EXCEL中的数据有效性,简单...
    做软件中难免会遇到数据导入的功能,而数据导入要生成一个模板,模板中有些字段是需要固定那几种的,比如产品分类,如果让用户直接填写id号的话用户可能不知所云,很有可能会填错,这样唯一的解决办法就是使用下拉菜单,就是EXCEL中的数据有效性,简单研究一下,下面把源码贴出来:

    $objExcel = new PHPExcel();
    $objWriter = new PHPExcel_Writer_Excel5($objExcel);
    $objExcel->setActiveSheetIndex(0);
    $objActSheet = $objExcel->getActiveSheet();
    $objValidation = $objActSheet->getCell("A1")->getDataValidation(); //这一句为要设置数据有效性的单元格
    
    $objValidation -> setType(PHPExcel_Cell_DataValidation::TYPE_LIST)
               -> setErrorStyle(PHPExcel_Cell_DataValidation::STYLE_INFORMATION)
               -> setAllowBlank(false)
               -> setShowInputMessage(true)
               -> setShowErrorMessage(true)
               -> setShowDropDown(true)
               -> setErrorTitle('输入的值有误')
               -> setError('您输入的值不在下拉框列表内.')
               -> setPromptTitle('设备类型')
               -> setFormula1('"列表项1,列表项2,列表项3"');



    这样再写入一下就可以看到效果了,最后的setFormula1千万不要删除两边的双引号,否则会失效,当时我就在这里纠结了好长时间。
    仅供参考,转载请注明出处….
    本文标题:PHPExcel限制数据有效性,显示下拉菜单
    本文链接:http://www.maben.com.cn/archives/386.html  转载请注明出处
    展开全文
  • Excel 下拉列表数据有效性智能匹配筛选 来源公式如下(适用于2010以上版本) =OFFSET(数据!$A$1,MATCH(INDIRECT("R"&ROW()&"C"&COLUMN(),)&"*",数据!$A:$A,0)-1,,COUNTIF(数据!$A:$A,INDIRECT("R...

    Excel 下拉列表数据有效性智能匹配筛选

    来源公式如下(适用于2010以上版本)

    =OFFSET(数据!$A$1,MATCH(INDIRECT("R"&ROW()&"C"&COLUMN(),)&"*",数据!$A:$A,0)-1,,COUNTIF(数据!$A:$A,INDIRECT("R"&ROW()&"C"&COLUMN(),)&"*"))

    对于2010版本以下的excel,不能跨工作表引用sheet ,可如下设置

    点击【公式】下的【对应名称】,设置范围名称

    "a"对应上面的 "数据!$A$1" 

    "aa"对应上面的 "数据!$A:$A" 

    =OFFSET(a,MATCH(INDIRECT("R"&ROW()&"C"&COLUMN(),)&"*",aa,0)-1,,COUNTIF(aa,INDIRECT("R"&ROW()&"C"&COLUMN(),)&"*"))

    点击保存时会提示错误,忽略!

     

    展开全文
  • Private Sub Worksheet_Change(ByVal Target As Range) Dim rng As Range Dim c As String For Each rng In Target If Not rng.Validation.Value Then Application.Undo Dim msg As String msg = "粘贴的数据不符合...

    加入vbs脚本编程,同时开启宏。但是如果用户电脑不开启宏,意味着生成的excel中vbs脚本失效。操作步骤如下:
    在这里插入图片描述点击开发工具,启动宏,如果wps的话开启需要安装插件
    在这里插入图片描述
    点击根据步骤1,2,3将vbs代码复制黏贴进去,vbs代码在文章底部。
    重点!重点!重点!最后记得要加密整个工作簿,可以编辑的单元格要设置取消锁定(选中单元格,鼠标右键后点击单元格格式)。
    在这里插入图片描述在这里插入图片描述
    vbs代码如下:

    Private Sub Worksheet_Change(ByVal Target As Range)
       Dim rng As Range
       Dim c As String
        For Each rng In Target
        If Not rng.Validation.Value Then
            Application.Undo
            Dim msg As String
            msg = "粘贴的数据不符合校验规则:位置在第" & rng.Row & "行,第" & getColumnName(rng.column) & "列,请仔细检查"
            MsgBox prompt:=msg, Title:="输入提示"
        Exit For
        End If
    Next
    End Sub
     
     
    Private Function getColumnName(column As Integer) As String
        Dim alphabet(26) As String
        alphabet(0) = "A"
        alphabet(1) = "B"
        alphabet(2) = "C"
        alphabet(3) = "D"
        alphabet(4) = "E"
        alphabet(5) = "F"
        alphabet(6) = "G"
        alphabet(7) = "H"
        alphabet(8) = "I"
        alphabet(9) = "J"
        alphabet(10) = "K"
        alphabet(11) = "L"
        alphabet(12) = "M"
        alphabet(13) = "N"
        alphabet(14) = "O"
        alphabet(15) = "P"
        alphabet(16) = "Q"
        alphabet(17) = "R"
        alphabet(18) = "S"
        alphabet(19) = "T"
        alphabet(20) = "U"
        alphabet(21) = "V"
        alphabet(22) = "W"
        alphabet(23) = "X"
        alphabet(24) = "Y"
        alphabet(25) = "Z"
     
        
        If (column < 27) Then
            getColumnName = alphabet(column - 1)
        Else
            Dim i, j As Integer
            i = column \ 26
            j = column Mod 26
            If (i < 26) Then
                getColumnName = alphabet(i - 1) & alphabet(j - 1)
            Else
                getColumnName = column
            End If
                
        End If
        
    End Function
    
    展开全文
  • 基于XML Schema的数据有效性验证

    千次阅读 2009-02-10 17:29:00
    在进行数据交换时,首先必须对XML文档表示的数据进行有效性验证。文中主要讨论.NET框架下利用XML Schema对XML文档进行有效性验证的算法。 关键词:XML;XML Schema;有效性验证;.NET框架 中图分类号:TP301 文献...

    摘要:XML可作为行业内数据交换的标准表示。XML文档的有效性验证是检查该文档是否遵循行业规定的XML文档格式。在进行数据交换时,首先必须对XML文档表示的数据进行有效性验证。文中主要讨论.NET框架下利用XML Schema对XML文档进行有效性验证的算法。
      关键词:XML;XML Schema;有效性验证;.NET框架
      中图分类号:TP301 文献标识码:A文章编号:1009-3044(2007)03-10638-03
      
      1 引言
      
      XML文档可以表示结构化数据,XML的一个主要目的是允许在组织和应用程序之间自由交换结构化的数据。为此,必须首先定义用于交换信息的XML文档格式,并达成一致。用于数据交换的XML文档首先必须是结构良好的,还需要确保该文档是有效的,也就是该文档要严格遵循已达成一致的结构、业务逻辑和规则。在进行数据交换时,首先要对XML文档进行有效性验证。本文讨论利用XML Schema对XML文档表示的数据进行有效性验证,并给出了在.NET框架下用C#实现的算法。
      
      2 XML Schema简介
      
      通常首先要定义一个模式用于验证XML文档。定义XML文档结构最初的解决方案是使用已有的Document Type Definition(DTD)语法,但是,人们不久就认识到,DTD的限制非常多,它们不支持强数据类型,也不能扩展,只能根据元素的顺序和频率进行了非常有限的验证。同时,由于DTD是用不同于XML的语言写成的,需要不同的分析器来分别处理DTD和XML文档本身。另外,由于DTD的语法也相对复杂和古怪,不大易用,所以,又产生了XML Schema。
      XML Schema Definition(XSD)语言由W3C引入,作为DTD的替代品,XML Schema克服了DTD的所有缺点,与DTD相比,XML Schema具有以下优点:XML Schema基于XML,没有专门的语法;XML Schema支持一系列的数据类型(int,float,boolean,date等等);XML Schema提供可扩充的数据模型,它允许扩充词表并在没有无效文件的情况下确定元素之间的关系;XML Schema利用名域空间(Namespace)将文档中的特殊节点与Schema说明相联系。
      为便于说明问题,下面我们给出一个XML文档,它包含了有关报纸文章的信息。
      
      为验证上述示例文档,我们可建立如下的XSD文档,关于XML Schema如何建立不是本文的讨论重点,此处不加以详述:
      
      
      3 XML文档有效性验证
      
      下面介绍在微软.NET Framework下用C#具体实现对XML文档的有效性验证。.NET Framework提供了用于验证XML文档的XmlValidatingReader类。XmlValidatingReader继承于XmlReader类,该类通过实现 W3C 建议所定义的有效性约束来提供 DTD、数据简化 XML (XDR) 和 XML 架构定义语言 (XSD) 架构验证服务。XmlValidatingReader 类实现 XmlReader 类,并以只进方式对 XML 流执行验证。
      
    本文原文
      这里,我们将XML有效性验证的算法封装成一个类ValidateXML,因此首先在VS.NET中添加一个类库项目,在该项目中添加一个ValidateXML类。.NET Framework中,与Xml和Xml Schema相关的类集中在System.Xml和System.Xml.Schema命名空间中,所以必须在程序开头用using语句把这两个命名空间包含进来。然后,按下列步骤建立ValidateXML类:
      步骤1 创建一个XmlValidatingReader对象。
      我们在上述ValidateXML类中添加一个方法Validate(),该方法读取XML文档并进行验证,其形式如下所示,其中xmlFile是xml文档名,xmlSchemaFile是XSD架构文件名,在验证成功时,返回true,否则返回false。为了获取验证状态,在类中定义一个类成员变量success。
      private bool success;
      public bool Validate(string xmlFile,string xmlSchemaFile,string xmlns)
      为读取并验证XML文档,常用的方法是,首先创建一个XmlTextReader对象,通过它读取XML文档,XmlTextReader对象不具有任何验证功能,因此需要创建一个XmlValidatingReader对象,并将它与XmlTextReader建立关联,执行验证功能。将下面这段代码加入Validate()方法的开始部分:
      success=true;
      //建立XmlTextReader对象,该对象读取XML文档
      XmlTextReader xt=new XmlTextReader(xmlFile);
      //建立ValidatingReader对象,与前面的XmlTextReader对象相关联
      XmlValidatingReader xv=new XmlValidatingReader(xt);
      步骤2 建立模式缓存。
      .NET Framework包含一个XmlSchemaCollection类,该类允许在内存中对Schema建立缓存,而不要每次都重新加载它们来验证一个文档。这可以改进运行时性能,特别是如果有许多XML文档需要进行验证时。
    将以下代码加入到上面Validate()方法中。这段代码从磁盘读取XML Schema文件,并加载到一个XmlSchemaCollection对象中,然后将该XmlSchemaCollection对象加载到XmlValidatingReader的Schemas属性中。该属性是模式的XmlSchemaCollection,在验证时被XmlValidatingReader所用。
      //读取用于验证的Schema文件并添加到XmlValidatingReader对象的模式缓存中
      XmlSchemaCollection xs = new XmlSchemaCollection();
      xs.Add(null, new XmlTextReader(xmlSchemaFile));
      xv.Schemas.Add(xs);
      步骤3 注册验证事件处理程序方法。
      验证事件处理程序方法接收有关验证错误的通知。将以下代码加入Validate()方法。这段代码注册了一个名为ValidationErrorProcess的事件处理程序方法,后面我们将实现该方法。
      //注册验证事件处理程序方法
      xv.ValidationEventHandler+=new ValidationEventHandler(ValidationErrorProccess);
      步骤4 读取和验证文档。
      使用XmlValidatingReader对象的Read()方法来读取XML文档的内容。每次调用Read()方法时,将得到文档中的下一个节点。在读取过程中,XmlValidatingReader将验证XML文档,并报告所检测到的任意验证错误。当有验证错误时,调用验证事件处理程序方法,并将有关验证错误信息作为其参数。在某些情况下可能出现一个XmlException异常,例如一个丢失的XML文档或模式等。因此,应该将代码包含在一个try…catch块之中,从而能在异常发生时捕获XmlException事件。当读到文档结尾时,Read()方法返回false。此时,应该关闭这个XmlValidatingReader对象。
      将以下代码加入Validate()方法中。这段代码使用Read()方法来读取整个XML文档的内容。在读取过程中,XmlValidatingReader将验证整个XML文档。整个代码都被包含在一个try…catch块中。注意,我们在finally块中关闭XmlValidatingReader,这也将自动关闭潜在的XmlTextReader:
      try{
      //读取并验证XML文档
      while(xv.Read()){}}
      catch{
      success=false;//此处可添加对XmlException异常的处理}
      finally {
      xv.Close();}
      return success;
      至此,Validate()方法代码全部写完,下面编写验证事件处理程序方法代码。
      步骤5 实现验证事件处理程序方法。
      验证事件处理程序方法用来处理遍历XML文档时XmlValidatingReader检测到的任意验证错误。在ValidateXML类中添加下列方法ValidationErrorProcess(),其形式如下所示,该方法名必须与步骤3注册的方法名相同,且事件参数必须为ValidationEventArgs类型。
      private void ValidationErrorProcess(object sender, ValidationEventArgs args)
      将以下代码加入到ValidationErrorProcess()方法中。这里,我们在只是简单地将类成员变量success设置为false,表示XML文档不是有效的。
      success=false; //此处可加入对验证错误的处理程序
      至此,整个ValidateXML类设计完成。
      
      4 应用实例
      
      这里,我们通过一个简单的实例来介绍上述实现的ValidateXML类的应用。
      首先,分别建立上面示例中给出的XML文档和XML Schema文档,并存储在磁盘中。假设我们将它们分别存储为c:/article.xml和c:/newsarticle.xsd中。
      在VS.NET中添加一个Windows应用程序项目,在该项目中添加对上面建立的类库项目的引用。然后,设计一个窗体,并将下面的代码添加到按钮的Click事件处理程序中。这段代码创建了一个ValidateXML对象,并利用该对象的Validate()方法对指定的XML文档进行验证,并将验证结果通过Label控件lblResult显示出来。
      我们可以修改XML文档,使之有效或者变得不再有效,从多个方面来进行实验,来检查应用程序能否检测到验证错误。
      private void button1_Click(object sender, System.EventArgs e)
      {lblResult.Text="";
      ValidateXML.ValidateXML validateXml=new ValidateXML.ValidateXML();
      if(validateXml.Validate("c://article.xml","c://newsarticle.xsd"))
      lblResult.Text="Validation Success!";
      else
    lblResult.Text="File Not Exists or Validation Fail!";}
      
      5 结束语
      
      本文详细地论述了.NET Framework下应用XML Schema对XML文档表示的数据进行有效性验证的方法,并建立了相应类库,读者可以直接按本文介绍的方法加以应用。数据的有效性验证在基于XML的数据交换应用中是必不可少的一步,因此应用相当广泛。

    展开全文
  • Excel设置数据有效性实现单元格下拉菜单的3种方法 一、直接输入: 1.选择要设置的单元格,譬如A1单元格; 2.选择菜单栏的“数据”→“有效性”→出现“数据有效性”弹出窗口; 3.在“设置”选项中→“有效性条件”...
  • EXCEL二级数据有效性的设置问题

    千次阅读 2008-12-08 20:48:00
    一、在A1:A2中输入高中、初中,并设置成“类别”名称”(选中A1:A2,在名称框〔就是平时用来显示单元地址的框,通常位置在“打开”、“保存”的图标的下方...二、选择D1单元格,菜单“数据”/“有效性”/“允许”中选
  • // 粗体显示 font2.setFontHeightInPoints((short) 12); // font2.setColor(HSSFColor.RED.index);// 字体颜色:红色 font2.setColor(HSSFColor.BLACK.index);// 字体颜色:黑色 style.setFont(font...
  • 科学研究设计六:有效性威胁

    万次阅读 2017-11-18 08:46:51
    内部有效性和外部有效性
  • MATLAB 显示输出数据的三种方式

    万次阅读 多人点赞 2017-12-12 11:31:56
    MATLAB显示输出数据主要有三种方式,一种是直接在命令行输入数据项并且不加“;”符号,另外两种是利用disp函数和fprintf函数实现
  • 在录入众多数据之后,难免会有一些重复,对于这些重复的数据可以高亮显示,如此一来就会提高工作效率,那么如何高亮重复项和删除重复项呢?下面有个不错的教程,全程为大家详细讲解一下。有不会的朋友可不要错过喽,...
  • 证书有效性验证、根证书

    千次阅读 2019-03-29 15:37:10
    一、 数字证书的有效性验证主要从三个方面: (1)数字证书有效期验证 (2)根证书验证 (3)CRL验证 1、数字证书有效期验证 就是说证书的使用时间要在起始时间和结束时间之内。通过解析证书很容易得到证书的...
  • excel使用数据字典显示数据——宏

    千次阅读 2017-06-22 09:38:11
    对应的宏代码: Public Sub test() Dim Arr1, Arr2, Arr3 Dim Arr4() Dim Dic As Object Dim MyRng As Range Dim i As Long Set MyRng = Sheet1.UsedRange Set MyRng = MyRng.Offset(1).Resize(MyRng.Rows.Count -...
  • 探索性数据分析

    万次阅读 多人点赞 2019-01-05 21:15:22
    探索性数据分析(Exploratory Data Analysis,EDA)是指对已有数据在尽量少的先验假设下通过作图、制表、方程拟合、计算特征量等手段探索数据的结构和规律的一种数据分析方法,该方法在上世纪70年代由美国统计学家J....
  • 字段有效性规则表达式的示例

    千次阅读 2009-12-01 21:13:00
    字段有效性规则表达式的示例可以使用表达式创建字段或控件的有效性...还应考虑设置 ValidationText 属性,当违反有效性规则时,该属性将保存 Access 显示的文本。如果不设置 ValidationText 属性,Access 将显示默认的
  • 1)输入的有效性验证RequiredFieldValidator控件(非空验证)  asp:TextBox ID="txt_username" CssClass="form-control" runat="server">asp:TextBox> asp:RequiredFieldValidator ControlToValidate="txt_...
  • 聚类有效性——最佳聚类数

    万次阅读 2015-09-09 21:39:27
    聚类有效性的评价标准有两种:一是外部标准,通过测量聚类结果和参考标准的一致性来评价聚类结果的优良;另一种是内部指标,用于评价同一聚类算法在不同聚类数条件下聚类结果的优良程度,通常用来确定数据集的最佳...
  • 确保数据的完整 = 在创建表时给表中添加约束 完整的分类: 实体完整: 域完整: 引用完整: 4.1 实体完整 实体:即表中的一行(一条记录)代表一个实体(entity) 实体完整的作用:标识...
  • 您应了解亚马逊 MWS上传数据 API部分的相关内容 您可以通过亚马逊商城网络服务(亚马逊 MWS) API 的亚马逊 MWS上传数据 API部分,将库存和订单数据上传至亚马逊。您还可以通过亚马逊 MWS上传数据 API 部分,...
  • Oracle DB 隐式和显示数据类型转换

    千次阅读 2013-10-17 09:22:44
    转换函数 除了Oracle 数据类型,还可以使用美国国家标准协会(ANSI) 、DB2 和SQL/DS ...在某些情况下,Oracle Server 会收到数据类型与预期的数据类型不同的数据。发生这种情况时,Oracle Server 可自动将该数据
  • 国密SM2证书的有效性验证

    千次阅读 2015-01-09 17:17:43
    通常的X509证书是国际通用的RSA证书,现在国家推出了自己的加密算法,SM2算法,本文根据自己工作中遇到的情况,试图讲一下国密SM证书的有效性验证。 证书在本地存储一般是DER(二进制)格式的,网络传输则是base64...
  • kafka数据可靠深度解读

    万次阅读 多人点赞 2017-05-02 19:19:32
    3.4 数据可靠和持久保证 当producer向leader发送数据时,可以通过request.required.acks参数来设置数据可靠的级别: 1(默认):这意味着producer在ISR中的leader已成功收到数据并得到确认。如果leader宕机了...
  • xml基于Schema的XML文档有效性验证

    千次阅读 2018-03-14 13:57:58
    NO.6:设置zip元素的内容的值,在element中设置为”\d{6}”> 3、调试过程及其显示结果:   输出schema文件*.xsd的显示结果:   <!-- W3C Schema generated by XMLSpy v2018 (http://www.altova.com) --> ...
  • ElasticSearch如何一次查询出全部数据

    万次阅读 2018-08-30 13:15:11
    使用from size进行分页查询(深度分页),当数据量大的时候,对全部数据进行遍历,使用from size性能会很差。from指的是从哪里开始拿数据,size是结果集中返回的文档个数。from-size的工作原理是:如size=10&amp...
  • 数据结构-快速排序(含全部代码)

    万次阅读 2021-03-15 17:09:19
    L,int low,high) 参数:顺序表L,待排最小下标,待排最大下标 功能:排序(默认升序)空间复杂度:O(1) 时间复杂度:O(nlog2n)-O(n) 稳定:不稳定 代码 //快速排序分割函数 int Partition(SqList &L,int ...
  • 数据结构-冒泡排序(含全部代码)

    万次阅读 2021-03-15 16:46:52
    全部代码 结果截图 函数分析 下标从小到大,相邻依次比较,直到最后两个被比较,每次比较,若为逆序,则交换,以上为一趟冒泡排序。 使用一个标记,有交换时标记,若一趟下来没有需要交换的,则停止。 void ...
  • result.txt文件的数据来源是爬取猫眼电影前一百名的电影,而result2.txt文件只不过是内容上把result.txt的内容复制几十次,使其数据足够多,现截选如下: {"排名": "1", "片名": &...
  • 主要内容包括: 1.Anaconda软件的安装过程及简单配置 2.聚类及Kmeans算法介绍 3.案例分析:Kmeans实现运动员位置聚集 希望这篇文章对你有所帮助,尤其是刚刚接触数据挖掘以及大数据的同学,同时准备尝试以案例为...
  • 多波段栅格数据显示 我上面说了这么多,可能有的人会觉得平时也根本用不上。自然,说起影像数据,大家接触到对多的就是最最常见的航片或卫片。对于这种栅格数据呢,大多数的场景下,都只需实现一个效果,就是最...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 581,502
精华内容 232,600
关键字:

如何全部显示数据有效性内容