Office: Inteligente Tabelle Spalte als Array einlesen

Helfe beim Thema Inteligente Tabelle Spalte als Array einlesen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo miteinander, ich habe eine Intelligente Tabelle mit dem Namen "tab_Muster" im Arbeitsblatt "Tabelle1" liegen. Aus dieser Tabelle möchte ich die... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Muecke.1982, 20. September 2018.

  1. Inteligente Tabelle Spalte als Array einlesen


    Hallo miteinander,

    ich habe eine Intelligente Tabelle mit dem Namen "tab_Muster" im Arbeitsblatt "Tabelle1" liegen.

    Aus dieser Tabelle möchte ich die Spalte "Soll eingelesen werden" als Array im VBA zu Verfügung stellen.

    Da sich das nicht in meiner original Datei machen muss zum testen habe ich mir eine Muster Datei erstellt.

    Das einlesen klappt soweit, was ich nicht verstehe ist warum das Array mehrdimensional ist.


    ich verstehe nicht warum ich wenn ich das Array ausgeben möchte immer die Nummer des Elementes + ",1" angeben muss.

    ich lese doch nur eine Spalte ein, somit dachte ich das ich auch nur eine Dimension habe und nicht zwei.

    Das ist der VBA CODE: im Anhang auch meine Muster Datei.

    Code:
    Gruß Mücke

    :)
     
    Muecke.1982, 20. September 2018
    #1
  2. Hallo,

    Tabellenblatt-Arrays sind immer zweidimensional, beginnend mit 1 als erstem und in Deinem Fall als einzigem Index, da es eben nur eine Spalte enthält ....*cool.gif*

    [edit]...Übrigens noch nebenbei, Variablen werden immer am Proc-Anfang deklariert und Du kannst noch sauberer deklarieren:
    Code:
    Gruß, Muller2
     
  3. Hey Muller2,

    Ah Ok, dann habe ich mal wider etwas dazu gelernt, danke, ich dachte schon das ich irgend wo wider etwas Übersehen habe, wie so oft ;-).

    DANKE


    ps. ich glaube da streiten sich die Geister wo man deklariert, ich kenne das auch so das man am Anfang vom Prog deklariert, jedoch in der zwischen zeit hat sich das bei mir eingeschlichen das ich deklariert und wenn ich werte dafür habe diese auch gleich hineinschreibe, so habe ich den Überblick wo was hin gehört ;-).

    Andererseits wenn man zu beginn deklariert hat man ein Übersicht welche Variablen man alles in dem Prog verwendet, ist beides charmant finde ich und haben vor und nachstelle.

    Sollte ich mit meiner Devise falsch liegen so lasse ich mir gerne einen besseren belehren.

    Gruß Mücke
    und noch ein schönes WE.
     
    Muecke.1982, 22. September 2018
    #3
  4. Inteligente Tabelle Spalte als Array einlesen

    Hallo Muecke,
    ...nö...*rolleyes.gif* ...allenfalls die, die Plan vom Proggen haben, mit den anderen...*wink.gif*
    null Problemo, mal 'n paar Bsp. von Top-Proggern hier in VBA, kannst ja mal versuchen rauszufinden, wo dort deklariert wird, in Cases Fall mußt jetzt nich seinen ganzen Blog durcharbeiten...*grins ...*cool.gif*

    Online - Excel Programmierung VBA Makro: Symbolleisten (5) - Im VBA Editor - Absolut heftig!!!
    Arrays Teil 2 - - - - - - - - - - - - - - - Office-Loesung.de
    Userform Teil 6 Transparent - - - - - - - - Office-Loesung.de
    Zugriff auf alle offenen Excel-Instanzen - - Office-Loesung.de
    http://vbanet.blogspot.com/

    ...ach ja Phelan hier aus dem Forum hab ich noch vergessen, da such Dir selbst mal was raus, sozusagen als Homework...*laugh

    Gruß, Muller2
     
  5. Für VBA würde ich Dir "meistens" zustimmen, obwohl ich da manchmal auch mitten im Code deklariere.
    Auch wenn es das in VBA nicht gibt, kann man zumindest einen Block scope andeuten und außerdem
    kann man die Variable im Code vorher nicht nutzen.

    Von daher IMHO ganz nützlich, wenn man weiss, was man tut. Folgender Code z.B. liefert
    für VB.NET einen Fehler, läuft aber unter VBA
    Code:
    Update Und es gibt Profis, die bevorzugen es mitten im Code
     
  6. Hallo Muller2,

    das mit dem Definitionsort der Variablen ist doch auch nur eine schöne Theorie, so wie die 'Ungarische Notation' von Variablennamen - it's nice to have - but needn't to do it ; und es ist wie mit dem Handy-Benutzungsverbot beim Autofahren, doch wer hält sich schon daran.
    Seit ich mich intensiver mit C# beschäftige, stehe ich mehr auf dem Standpunkt, was vom Compiler akzeptiert wird, ist auch erlaubt, selbst GoSub/Return hat bei mir wieder eine kleine Renaissance, obwohl allgemein verpönt.
    Warum soll ich eine Variable am Anfang der Prozedur/Funktion deklarieren, wenn ich sie erst 150 Zeilen später brauche. Das hat auch M$ eingesehen und in Dot.Net anonyme Funktionen auf der Basis von Delegaten eingeführt, damit der Ort der Definition und der Aufrufort im Quellcode möglichst beieinander sind - was der Compiler dann daraus macht (Definition einer eigene Klasse/Struktur) juckt dem Programmierer nicht.
    Mit Office 2019 kommt ja JavaScript als Programmierumgebung hinzu und dann gibt es endlich Variablen mit eigenem Scope-Bereich.

    Gruß von Luschi
    aus klein-Paris
     
  7. \@Luschi: Ja, ich denke, Du hast einfach Recht.
    Auch wenn ich meistens bei VBA die Deklaration am Anfang mache,
    ist das auch bei mir eher Cargo-Cult-Programming (was ich anderen immer vorwerfe *grins ).
     
  8. Inteligente Tabelle Spalte als Array einlesen

    Oha, da habe ich ja was losgetreten. :-)

    wie ich aber schon merke ohne die verlinkten beitrage mir anzuschauen das es wohl doch eine gewisse Uneinigkeit gibt.

    Jeder so wie er die verlieben hat ;-) oder es gelernt hat.
    Abstruses Beispiel: bei mir muss dreckiges Geschirr immer gleich in die Spülmaschine, bei anderen Menschen reicht das wenn man das erst mal auf der Spülmaschine sammelt und dann alles zusammen einräumt, für mich unvorstellbar, für andere ganz normal. Das ich wenn ich das Sehe jedoch alles Nehme und direkt einräume stört niemanden :-).
    Solange der Compiler nicht motzt ist alle gut ;-)


    @Storax: dein Fehler der Variable die nicht bekannt ist ist doch Logisch denn die Variable ist in einem IF Block Deklariert, somit ist die nur im IF Block verfügbar und außerhalb unbekannt.
    Ihr habt recht es gibt regeln für das Deklarieren an die man sich halten muss, jedoch mache ich nicht jede Variable immer zu einer Globalen Geschichte, alleine schon um Speicherplatz und Rechenarbeit zu sparen.

    Angenommen ihr Programmiert auf einen Mikrocontroller dort habt Ihr nur endlich Platz und man muss sparsam damit umgehen, da wird nur das Deklariert was man unbedingt braucht und auch nur dort wo man es benötigt, wenn es bedeutet das ich in einer Funktion/etc. eine Variable benötige die danach wider uninteressant ist (Speicher Freigeben) dann wird die auch nur dort Vorort Deklariert und benutzt.

    Das VBA diese Funktion des Deklarieren in einer Routine Funktion so nicht kennt ist mir ehrlich gesagt noch nicht aufgefallen ;-).

    Gruß Mücke
     
    Muecke.1982, 22. September 2018
    #8
  9. Das ist in VB.NET so, da es dort einen Block Scope gibt. In VBA ergibt der Code keinen Fehler. Ich würde vorschlagen, Du schaust Dir den Scope Begriff an.
    Das hat nichts mit Logik zu tun, sondern nur wie das im Compiler implementiert ist.
    https://support.microsoft.com/en-gb/...r-applications
    Understanding Scope
     
Thema:

Inteligente Tabelle Spalte als Array einlesen

Die Seite wird geladen...
  1. Inteligente Tabelle Spalte als Array einlesen - Similar Threads - Inteligente Tabelle Spalte

  2. VBA - Datensätze ans Ende einer anderen Tabelle kopieren

    in Microsoft Excel Hilfe
    VBA - Datensätze ans Ende einer anderen Tabelle kopieren: Hallo zusammen, ich habe gerade eine "Abrechnungs"-Datei für einen Kindergartenbasar erstellt. Es wäre klasse, wenn man per Schaltfläche die Datensätze aus der Tabelle "Kaeufer" ans Ende der...
  3. (2021) Pivot-Tabelle: mehrere Spalten als eine behandeln

    in Microsoft Excel Hilfe
    (2021) Pivot-Tabelle: mehrere Spalten als eine behandeln: Hallo, ich habe eine Tabelle, die für jeden Monat und für jeden Mitarbeiter Projektdaten enthält. Da diese teils an mehreren Projekten arbeiten, gibt es pro Zeile z.B. die Spalten "Projekt 1" und...
  4. Resultat aus Filter in zweiten Tabellen Blatt filtern

    in Microsoft Excel Hilfe
    Resultat aus Filter in zweiten Tabellen Blatt filtern: Hallo zusammen Ich habe zwei Tabellenblätter mit div. Spalten. Wenn ich in der ersten Tabelle nach ACCT Filter, erhalte ich die Projektnummern welche zu diesem Account gehören. [ATTACH] Nun würde...
  5. Numerierung in eingefügt Tabellen in Word Dokument

    in Microsoft Word Hilfe
    Numerierung in eingefügt Tabellen in Word Dokument: Hallo erstmal und Danke für die Aufnahme Ich versuche seit langem eine Nummerierung in einer in Word eingefügten Tabelle hinzubekommen und schaffe es nicht. Könnte sich das jemand anschauen? mfg Kai
  6. Bedingte Formatierung funktioniert nicht

    in Microsoft Excel Hilfe
    Bedingte Formatierung funktioniert nicht: Hallo, ich habe eine Excel Datei erstellt und es funktioniert alles, bis auf eine bedingte Formatierung. Ich verstehe einfach nicht wieso. Habe in der Liste schon andere Formatierungen, die sehr...
  7. Word Text mit inteligenten Dropdownfeldern erzeugen

    in Microsoft Word Hilfe
    Word Text mit inteligenten Dropdownfeldern erzeugen: Hallo zusammen. Ich hoffe die Frage wurde noch nicht gestellt. Ich möchte gern in Word ein Text mit Dropdownfelder erstellen. Die Dropdownfelder müssten: Beispiel: Kürzel „A“ wird in der...
  8. Inteligente Dropdown auswahl Liste

    in Microsoft Excel Hilfe
    Inteligente Dropdown auswahl Liste: So ich habe folgendes Problem. Stelle ich eine Dropdown über die Gültgkeit ein, kann man die Zelle selbst nich mehr ändern. Mann kann nur die Elemente einer vordefinierten Liste übernehmen....
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden