Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi

mit dem folgenden Code versuche ich daten von einer Tabelle in die andere zu kopieren (innerhalb eines Excel sheets)... bisher hat alles auch gut funktioniert, nur auf einmal baut das makro nur noch mist... wenn ich das Makro normal laufen lasse überspringt er Zeilen, wenn ich ihn im Debugger laufen lasse macht er die erste Spalte richtig aber den rest verschluckt er irgendwie - den Zellen werden Zwar Daten zugewiesen aber in der Tabelle seh ich gar nichts davon...

hier mal der code:


    Dim t As Integer

    Dim intColOr As Integer

    Dim intRow As Integer, intCol As Integer

    Dim intRow2 As Integer, intCol2 As Integer


    'ErgebnisCol

    intCol2 = 4

    'AusgangsCol

    intCol = -1

    intColOr = -1


    Do

      'ErgebnisRow

      intRow2 = 2

      'AusgangsRow

      intRow = 16

      t = 1

      Do While intRow2 < 32

        If t <> 6 Then

          intCol = intColOr

          intCol = intCol + 4

          intColOr = intCol

        End If

        intCol = intColOr

        intRow = intRow + 1

        t = 1

        Do While t <> 6

          Tabelle3.Cells(intRow2, intCol2).Value2 = Tabelle2.Cells(intRow, intCol)

          intCol = intCol + 1

          intRow2 = intRow2 + 1

          t = t + 1

        Loop

       Loop

    Loop While Tabelle2.Cells(intRow, intCol) <> ""

schon mal im voraus danke für eure Antworten

Geschrieben

Morgen!

Was bewegen deine innerste Schleife bzw. Verzweigung?

Die erste (Verzweigung):

If t <> 6 Then

          intCol = intColOr

          intCol = intCol + 4

          intColOr = intCol

        End If

        intCol = intColOr

intCol = intColOr und zwar um 4 Größer, als vorher, wenn die Bedingung erfüllt ist. die zweite (Schleife):
Do While t <> 6

          Tabelle3.Cells(intRow2, intCol2).Value2 = Tabelle2.Cells(intRow, intCol)

          intCol = intCol + 1

          intRow2 = intRow2 + 1

          t = t + 1

        Loop

Ein Umbau von Senkrecht in waagerecht?

Falls ja, wirst du an geeigneter Stelle deine Variable intCol2 vergrößern müssen. bisher ist sie auf 4 gesetzt und wird dort auch bleiben. Du willst doch sicher eine Matrixartige Tabelle und nicht nur eine Ergebnisspalte.

Oder habe ich irgendetwas falsch interpretiert?

Geschrieben
Original geschrieben von Der Kleine

Falls ja, wirst du an geeigneter Stelle deine Variable intCol2 vergrößern müssen. bisher ist sie auf 4 gesetzt und wird dort auch bleiben. Du willst doch sicher eine Matrixartige Tabelle und nicht nur eine Ergebnisspalte.

Oder habe ich irgendetwas falsch interpretiert?

DingDingDing 100Punkte :D

Ich hab den Fehler gefunden... hast recht intCol2 musste um eins erhöht werden(und noch ein paar andere kleine fehlerchen)...

Der Fehler kam wohl zu stande weil ich das Makro von einem anderen sheet auf das jetzige umbauen musste... trotzdem Danke! ;)

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...