PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerExcelExcelMakro för att hitta nästa tomma radMakro för att hitta nästa tomma rad
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2021-09-01 22:02
 

 Försöker göra ett makro för att hitta sista använda cell i en kolumn eller första tomma rad rad, Hittade detta, men det blir ett kompileringsfel vid End(xlUp)

 intSistarad = Columns("A:A").Range("A65536").End(xlUp).Row

  intSistarad = intSistarad + 1

'Kan det gå att lösa?

 

Nytt inlägg
 2021-09-02 06:48
 
 Ändrad av Christian  på 2021-09-02 06:54:11

 hejhej

Dim lngrad as long

lngrad= activesheet.range("A65536").end(xlup).row

Ovan kod kommer söka med start i cell A, och därefter uppåt i samma kolumn. Så du behöver inte specificera vilken kolumn som ska sökas av, den plockas av cellen du angett som startposition för sökningen. Den fungerar precis såsom om du skulle ha stått i cellen och därefter tryckt ctrl+shift + pil upp.

Ditt kompileringsfel bör dock bero på något annat efterssom den är körbar. Har du Option explicit på så måste du alltid deklarera dina variabler:

Dim Intsistarad as integer.

Sedan finns ytterliggare problematik. En int kan inte lagra tal över 32767, så om du får träff på en rad över detta kommer du få körfel. Därför ska du istället använda Long

Dim lngSistarad as Long

MVh

Christian

 

 

Nytt inlägg
 2021-09-02 16:16
 

 Hej

Tack. Nu fungerar det när jag skriver så här:

Dim Intsistarad As Long

Intsistarad = ActiveSheet.Range("A65536").End(xlUp).Row

Det som gjorde skillnad var raden Dim Intsistarad As Long

Formeln fungerar för att hitta en helt tom cell. Men jag skulle även vilja använda en liknande funktion i ett blad där en formel styr vad som skall visas =OM(ELLER(T489Kolumn T1:T500 innehåller en lista med datum. Alltså vill jag hitta första till synes tomma cel i detta område. Har du någon idé om en lösning på detta?

Nytt inlägg
 2021-09-02 16:16
 

 Hej

Tack. Nu fungerar det när jag skriver så här:

Dim Intsistarad As Long

Intsistarad = ActiveSheet.Range("A65536").End(xlUp).Row

Det som gjorde skillnad var raden Dim Intsistarad As Long

Formeln fungerar för att hitta en helt tom cell. Men jag skulle även vilja använda en liknande funktion i ett blad där en formel styr vad som skall visas =OM(ELLER(T489Kolumn T1:T500 innehåller en lista med datum. Alltså vill jag hitta första till synes tomma cel i detta område. Har du någon idé om en lösning på detta?

Nytt inlägg
 2021-09-03 07:46
 
 Ändrad av Christian  på 2021-09-03 09:49:01

Hej igen

En variant på att få ut cellens address genom formel:

="T"&MIN(OM((--(T1:T500=""));RAD(T1:T500);""))

Förklaring: (--(T1:T500=""));RAD(T1:T500) genererar en matris med samtliga radnummer som har tomma celler. =MIN() plockar ut det lägsta radnumret i den matrisen. "T" klistrar in ett T framför radnumret.

Vill du ha att något ska skrivas till första tomma cell så går det eventuellt att bygga in detta i din eller formel, men bör egentligen programmeras. Vill du ha en kodlösning så får du gärna ställa en sådan fråga till vba forumet istället :), samt beskriva vad du vill skriva till cellen osv. 

Mvh

Christian

 

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelMakro för att hitta nästa tomma radMakro för att hitta nästa tomma rad

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter