Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  Zelle aus Excel auslesen ohne Expression

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
Autor Thema:  Zelle aus Excel auslesen ohne Expression (1088 mal gelesen)
Kaichi
Mitglied



Sehen Sie sich das Profil von Kaichi an!   Senden Sie eine Private Message an Kaichi  Schreiben Sie einen Gästebucheintrag für Kaichi

Beiträge: 26
Registriert: 07.11.2013

NX 8.5.2.3
Catia V5R19

erstellt am: 16. Jan. 2014 15:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen,

ich möchte eine Zelle aus einer Excel-Tabelle auslesen.
Der Wert dieser Zelle soll dann in einer Windows Form in eine TextBox geschrieben werden.

Dazu benutze ich momentan folgenden Code, den ich hier im Forum gefunden habe:

Dim xls_name As String = "C:\...\Test.xlsx"

Dim expr_str As String = "undefined" & " = ug_cell_read(""" &xls_name & """,""" & "Tabelle 1" & "!" & "A1" &""")"
Dim expr_object As Expression = workPart.Expressions.CreateExpression("Integer" , expr_str)
Dim cell_value As Integer = expr_object.IntegerValue
TextBox_Test.Text = cell_value
workPart.Expressions.Delete(expr_object)

Soweit funktioniert das ganze einwandfrei.

Allerdings beinhaltet meine Windows Form mehr als 150 dieser TextBox´s.
Durch das ständige erzeugen und wieder löschen der Expressions dauert es ewig bis die Windows Form mit den Werten gefüllt ist.
(Circa 1-2 Sekunden pro TextBox!)

Gibt es eine Möglichkeit das ganze schneller zu machen? Evntl. ohne das ständige erzeugen und löschen von Expressions?

Habe schon einiges ausprobiert, bekomme aber immer die Meldung:
"ug_cell_read ist nicht deklariert ..." sobald ich es außerhalb einer Expression versuche.

Danke und Gruß
Kai

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 20. Jan. 2014 13:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Kaichi 10 Unities + Antwort hilfreich

Hallo Kai,

es ist noch keine 10 (in Worten: Zehn) Beiträge her, daß nach Excel gefragt wurde. Schon mal danach geschaut ?

Gruß, Michael

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Kaichi
Mitglied



Sehen Sie sich das Profil von Kaichi an!   Senden Sie eine Private Message an Kaichi  Schreiben Sie einen Gästebucheintrag für Kaichi

Beiträge: 26
Registriert: 07.11.2013

NX 8.5.2.3
Catia V5R19

erstellt am: 25. Jan. 2014 00:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hatte danach schon geschaut und die Datei nicht gefunden.

Nun habe ich die Beispiel Datei aber gefunden ... hatte vorher im NX8 (statt NX8.5) Ordner geschaut und dort ist die Beispiel-Datei noch nicht drin.

Habe es nun hinbekommen und es läuft.

Code:
Dim rowData As String
Dim objExcel = CreateObject("Excel.Application")
Dim objWorkbook = objExcel.Workbooks.Open (excelFileName, false, true)
rowData = objExcel.Cells(row, 2).Value
objExcel.Quit

Schön wäre nun noch wenn man das Arbeitsblatt also "Tabelle1", "Tabelle2" etc. auswählen kann.
Werde dort am Montag nochmal die Referenzdatenbank bemühen.

Erstmal Danke für die Hilfe   

[Diese Nachricht wurde von Kaichi am 25. Jan. 2014 editiert.]

[Diese Nachricht wurde von Kaichi am 25. Jan. 2014 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Kaichi
Mitglied



Sehen Sie sich das Profil von Kaichi an!   Senden Sie eine Private Message an Kaichi  Schreiben Sie einen Gästebucheintrag für Kaichi

Beiträge: 26
Registriert: 07.11.2013

NX 8.5.2.3
Catia V5R19

erstellt am: 25. Jan. 2014 18:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ok habs schon

Code:
rowData = objWorkbook.Worksheets("Tabelle1").Cells(row, 2).Value

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Elektrotechniker (m/w/d)
Menschen und Technologien zu verbinden, den Perfect Match für unsere Kunden zu gestalten, immer die richtigen Expert:innen für die jeweilige Herausforderung zu finden - das ist unser Anspruch bei FERCHAU und dafür suchen wir dich: als ambitionierte:n Mitarbeitende:n für einen unserer Kunden. Wir realisieren spannende Projekte für namhafte Kunden in allen Technologiebereichen und für alle Branchen und übernehmen Verantwortung für komplexe Entwicklungsprojekte....
Anzeige ansehenElektrotechnik, Elektronik
wladlaw
Mitglied
Ingenieur


Sehen Sie sich das Profil von wladlaw an!   Senden Sie eine Private Message an wladlaw  Schreiben Sie einen Gästebucheintrag für wladlaw

Beiträge: 72
Registriert: 11.01.2012

erstellt am: 27. Jan. 2014 22:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Kaichi 10 Unities + Antwort hilfreich


nx_api4920.txt

 
Hallo Kaichi,

hier poste ich ein Journal zu Deiner Problematik.

Um einen Zugang zu GTAC einzurichten, brauchst Du nicht so viel:
Server-ID, Webkey Access Code ( Log-Datei, Abschnitt
"Licensing Information" ) und eine gültige E-Mail-Adresse
(Firmen-Adresse bevorzugt).

------------------
Gruß
Wladimir

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz