Hej. Det bästa sättet att komma åt en specifik cell är via "cells(rad, kolumn)". Hej och tack för svaret. Ännu en Excel & VB.NET fråga som någon kanske kan: Offset funkar, men om man behöver det går det oftast fortare att ta in en stor range på en gång. Hej.Loopa genom excel dokument
Jag håller på med en VB.net application som skall parsa ett excel dokument. Att loopa genom en viss kolumn ex. A1 till A10 är ju inget problem. Men hur skriver man kod för att lopa genom vare rad också? Alltså när jag står på A1 vill jag också loopa genom B1, C1, D1, E1 osv.
Denna koden har jag för tillfället:
<code>
dim i as integer
dim login as string
Do
login = objWorkbook.Application.Range(col & i, col & i).Value
MessageBox.Show(login)
i = i + 1
Loop While login <> "" 'när en rad är tom slutar loopen....
</code>
/PhilipSv: Loopa genom excel dokument
Det mest effektiva sätt om du hanterar en stor range är faktiskt (tro det eller ej...) en variantarray:
Dim Data As Variant
Data = Range(Cells(1,1), Cells(25, 20))Sv:Loopa genom excel dokument
Hittade även ett sätt för att flytta sig mellan cellerna.
<code>
bjWorkbook.Application.ActiveCell.Offset(0, 1).Activate()
</code>
Koden ovan flyttar mig ett steg till höger bland cellerna. Rätt så användbart tycker jag.
/PhilipSv:Loopa genom excel dokument
I VB har jag en klass Employee. Jag fyller en listbox med instanser av klassen. Hur skall jag lyckas dra över "Employees" till Excel. Det går inte för tillfället. Måste klassen kodas så att det vid drag & drop endast skickas över viss data eller? Finns det någon form av drag & drop handler....
/PhilipSv: Loopa genom excel dokument
Jag känner inte till någon möjlighet att styra drag & drop-beteendet till excel. Däremot från VB måste du nog välja ut rätt information från början ja.Sv:Loopa genom excel dokument
Hittade till sist en lösning på problemet:
<code>
Dim dragdrop As DragDropEffects
If e.Button = System.Windows.Forms.MouseButtons.Left Then
dragdrop = lstTasks.DoDragDrop(CType(lstTasks.Items(lstTasks.SelectedIndex), Task).Symbol, DragDropEffects.Copy Or DragDropEffects.Move)
End If
</code>
På detta sätt bestämmer jag att objektet skall castas till klassen Task, och dess funktion Symbol som returnerar en String. String kan excel ta emot. Så det fungerar ju bra.
/Philip