2011-03-21 2 views
0

xslt를 통해 Excel xml 통합 문서를 만들고 있습니다. 날짜 필드 중 하나는 종종 NULL이며이 경우 셀에 아무 것도 삽입하지 않아도됩니다. 아무 것도 지정하지 않더라도 -146087 값이 셀에 입력됩니다. 셀이 날짜 형식이므로 해시로 표시됩니다.xslt를 사용하여 Excel에서 아무 것도/빈 텍스트를 셀에 어떻게 삽입합니까?

은 내가

<xsl:otherwise></xsl:otherswise> 

태그 사이에 무엇을 넣을 수 있습니다? 조건이 충족되지 않은 경우에

<Data/> 

:

여기

<Cell> 
    <Data ss:Type="DateTime"> 
    <xsl:choose> 
     <xsl:when test="substring(EOI_StartDate, 0, 11)"> 
     <xsl:value-of select="substring(EOI_StartDate, 0, 11)"/> 
     </xsl:when> 
     <xsl:otherwise> 

     </xsl:otherwise> 
    </xsl:choose> 
    </Data> 
    <NamedCell ss:Name="_FilterDatabase"/> 
</Cell> 

답변

1

그것은 당신이 생산하고자하는 질문에서 보인다 ... XSLT입니다.

이 작업을 수행하는 가장 간단한 방법은 <xsl:choose>를 사용하는 것이 아니라 간단한 <xsl:if> : 조건이 후, 만족하지 않는 경우에 당신이 완전히 <Data> 요소를 생략 할 경우에

<Data ss:Type="DateTime"> 
    <xsl:if test="substring(EOI_StartDate, 0, 11)"> 
    <xsl:value-of select="substring(EOI_StartDate, 0, 11)"/> 
    </xsl:if> 
</Data> 

또는 :

<Data> 요소가 유지해야하지만 조건이 만족하지 않은 경우 당신이이 날짜로 취급하지 않으려면
<xsl:if test="substring(EOI_StartDate, 0, 11)"> 
    <Data ss:Type="DateTime"> 
    <xsl:value-of select="substring(EOI_StartDate, 0, 11)"/> 
    </Data> 
</xsl:if> 

마지막으로, 다음을 수행하십시오

<xsl:choose> 
    <xsl:when test="substring(EOI_StartDate, 0, 11)"> 
    <Data ss:Type="DateTime"> 
      <xsl:value-of select="substring(EOI_StartDate, 0, 11)"/> 
    </Data> 
    </xsl:when> 
    <xsl:otherwise> 
    <Data ss:Type="String"> </Data> 
    </xsl:otherwise> 
</xsl:choose> 
+0

놀라운! 당신은 전설입니다. 이것을 분류하기 위해 몇 달이 걸렸습니다. – Westicle

+0

더 명확히하기 위해 첫 번째 예제가 작동하지 않았지만 조건이 충족되지 않은 경우 기본적으로 셀을 비워야하기 때문에 두 번째와 세 번째 모두 나를 위해 작동했습니다. – Westicle

+0

@Westicle : 천만에요. –

관련 문제