Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 使用公式的结果运行xsl:choose_Excel_Xslt_Formula_Translate_Xsl Choose - Fatal编程技术网

Excel 使用公式的结果运行xsl:choose

Excel 使用公式的结果运行xsl:choose,excel,xslt,formula,translate,xsl-choose,Excel,Xslt,Formula,Translate,Xsl Choose,创建XSL以将XML转换为Excel。其中一部分是在另一个工作表上执行查找的公式。但是,我想转换/转换返回,所以我认为xsl:choose是最好的 但是我不知道如何在xsl:choose中引用我的ss:Formula <Cell ss:StyleID="RARs17" ss:Formula="=INDEX('{$vhostname}'!R2C6:R{$vuln_count+7}C6,MATCH(RC3,'{$vhostname}'!R2C14:R{$vuln_cou

创建XSL以将XML转换为Excel。其中一部分是在另一个工作表上执行查找的公式。但是,我想转换/转换返回,所以我认为xsl:choose是最好的

但是我不知道如何在xsl:choose中引用我的ss:Formula

    <Cell ss:StyleID="RARs17"
        ss:Formula="=INDEX('{$vhostname}'!R2C6:R{$vuln_count+7}C6,MATCH(RC3,'{$vhostname}'!R2C14:R{$vuln_count+7}C14,0))>
        <Data ss:Type="String">
        <xsl:choose>
            <xsl:when test="ss:Formula = 'NF'">Completed</xsl:when>
            <xsl:when test="ss:Formula = 'NR'">NR</xsl:when>
            <xsl:when test="ss:Formula = 'O'">Ongoing</xsl:when>
            <xsl:when test="ss:Formula = 'NA'">NA</xsl:when>
            <xsl:otherwise><xsl:value-of select="ss:Formula" /></xsl:otherwise>
        </xsl:choose></Data>
    </Cell> <!-- Status, looks up Result -->

您不能引用输出树的节点。将公式定义为变量,并在属性和表达式中使用该变量


编辑 我可能误解了你所说的“参考我的ss:公式”的意思。如果您想考虑Excel执行的实际查找的结果,那将不起作用——原因在于提姆C在其评论中解释的原因。p>
但是,您可以使用XSLT方法(如
key
)自己执行查找

将公式定义为函数并在表达式中使用。如果您说希望XSLT处理Excel公式的结果,则这是不可能的。当Excel运行时,XSLT将早已消失。XSLT只是生成电子表格ML,然后由Excel进行处理。假设您正在记事本中手动创建Excel XML。你会怎么做?Excel中可能需要两个单元格。一个只是指定了当前公式,另一个使用Excel
IF
多次将代码转换为文本。我明白了,因为无法在XSL中处理Excel结果。