Error: Type mismatch
i have a vba code included the following:
shortest = count(1) For r = 1 To 200 If count(r) < shortest And count(r) 0 Then shortest = count(r) End If Next Rows("shortest:shortest").Select Selection.Cut Rows("1:1").Select Selection.Insert Shift:=xlDown However, when i try to run the code, the debugger promt an error message said : type mismatch and then highlight the code: Rows("shortest:shortest").select. I declared "shortest" as variant. Can any pro point out my mistake?Thank you very much |
Error: Type mismatch
You need the value of shortest in the Select, not just a string.
Instead of: Rows("shortest:shortest").Select use: Rows(shortest & ":" & shortest).Select -- Gary''s Student - gsnu200772 " wrote: i have a vba code included the following: shortest = count(1) For r = 1 To 200 If count(r) < shortest And count(r) 0 Then shortest = count(r) End If Next Rows("shortest:shortest").Select Selection.Cut Rows("1:1").Select Selection.Insert Shift:=xlDown However, when i try to run the code, the debugger promt an error message said : type mismatch and then highlight the code: Rows("shortest:shortest").select. I declared "shortest" as variant. Can any pro point out my mistake?Thank you very much |
Error: Type mismatch
Hi
"shortest:shortest" is a piece of text - VBA does not delve inside the text string to extract the variables. You need shortest & ":" & shortest The & character will force this to be a text string with shortest replaced with its numerical value. regards Paul On Mar 11, 9:31*am, wrote: i have a vba code included the following: shortest = count(1) For r = 1 To 200 If count(r) < shortest And count(r) 0 Then shortest = count(r) End If Next * * Rows("shortest:shortest").Select * * Selection.Cut * * Rows("1:1").Select * * Selection.Insert Shift:=xlDown However, when i try to run the code, the debugger promt an error message said : type mismatch and then highlight the code: Rows("shortest:shortest").select. I declared "shortest" as variant. Can any pro point out my mistake?Thank you very much |
Error: Type mismatch
On Mar 11, 5:58*pm, Gary''s Student
wrote: You need the value of shortest in the Select, not just a string. Instead of: Rows("shortest:shortest").Select use: Rows(shortest & ":" & shortest).Select -- Gary''s Student - gsnu200772 " wrote: i have a vba code included the following: shortest = count(1) For r = 1 To 200 If count(r) < shortest And count(r) 0 Then shortest = count(r) End If Next * * Rows("shortest:shortest").Select * * Selection.Cut * * Rows("1:1").Select * * Selection.Insert Shift:=xlDown However, when i try to run the code, the debugger promt an error message said :typemismatchand then highlight the code: Rows("shortest:shortest").select. I declared "shortest" as variant. Can any pro point out my mistake?Thank you very much- Hide quoted text - - Show quoted text - thank you |
Error: Type mismatch
On Mar 11, 5:58*pm, Gary''s Student
wrote: You need the value of shortest in the Select, not just a string. Instead of: Rows("shortest:shortest").Select use: Rows(shortest & ":" & shortest).Select -- Gary''s Student - gsnu200772 " wrote: i have a vba code included the following: shortest = count(1) For r = 1 To 200 If count(r) < shortest And count(r) 0 Then shortest = count(r) End If Next * * Rows("shortest:shortest").Select * * Selection.Cut * * Rows("1:1").Select * * Selection.Insert Shift:=xlDown However, when i try to run the code, the debugger promt an error message said :typemismatchand then highlight the code: Rows("shortest:shortest").select. I declared "shortest" as variant. Can any pro point out my mistake?Thank you very much- Hide quoted text - - Show quoted text - Sorry, i found that the code is a bit weird and unstable. i try to run it at the first time, it works. However, i try to run second time, it prompt out the "type mismatch" error message again |
All times are GMT +1. The time now is 06:16 AM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com