SQL Server 2005 OPENROWSET-einfügen in Excel - text in Zahl formatieren

So ist es nicht eine große Sache, aber mit Google nicht wieder etwas neueren (zumeist 2007 oder so) darüber möglicherweise eine Excel-Treiber-Problem...ich kam hier die Frage zu stellen, wie das, was ich fand, als "Antwort" nicht akzeptabel war, ohne weitere Forschung.

Mein problem:

Schreiben Sie eine dynamische OPENROWSET-Abfrage löschen und neue Daten einfügen senden Sie einen Bericht für bestimmte Benutzer - die Basis-excel-Bericht enthält einige Formeln, in denen es berechnet aus und die Summen auf der Grundlage der eingegebenen Daten und der Multiplikation Formeln scheinen gut zu funktionieren, aber es sei denn, die Summen werden richtig formatiert in Excel als "zahlen" anstelle von text die Summe wird nicht funktionieren...

Lösung muss frei sein-form basiert (wenn es eine Lösung gibt überhaupt), ich will nicht auf alle übertragen, meinen code in SSIS...

Update/Insert code:

    SELECT @sqlu = 'UPDATE OPENROWSET(' +
    '''Microsoft.ACE.OLEDB.12.0'', ' +
    '''Excel 12.0;Database=' + @File + ';HDR=YES'', ' +
    '''SELECT * FROM [Base$B1:G601]'')
    SET 
    col1 = '''', col2 = '''', col3 = '''', col4 = '''', col5 = '''', col6 = '''' '


    EXEC (@sqlu)


    SELECT @sqli = 'INSERT INTO OPENROWSET(' +
    '''Microsoft.ACE.OLEDB.12.0'', ' +
    '''Excel 12.0;Database=' + @File + ';HDR=NO'', ' +
    '''SELECT * FROM [Base$B1:G2]'')

    SELECT col1, col2, col3, col4, col5, col6
    FROM [DATABASE].[dbo].tbl_CIM
    WHERE col1 IN(''' + @area + ''')'


    EXEC (@sqli)

Das zweite problem und es kann nicht ein problem für jetzt, sondern später - nach dem einfügen, es scheint Grenzen zu schaffen um die Ergebnisse. Gibt es auch einen möglichen Weg, um solche zu entfernen, während das Ergebnis übertragen?

Jede Hilfe oder Quellen zu erforschen, wenn es ein Treiber Problem ist geschätzt, da konnte ich keine finden.

InformationsquelleAutor Darundo | 2012-02-19
Schreibe einen Kommentar