tvc 
				Seniormester  
			 
					
				03. maj 2009 - 15:22 
												Der er
									7  kommentarer													og 					1  løsning									 
									
		 
		
			
Redigering af funktion via VBA - fejler 
			Hej Er der en der kan fortælle mig hvorfor jeg får ' ' rundt om min funktion (Indhold) ved brug af nedenstående funktion? Sub Makro1() Dim Indhold As String Indhold = Strings.Mid(ActiveCell.Formula, 2, 99)     ActiveCell.FormulaR1C1 = "=ROUND(" + Indhold + ",-3)"      End Sub Hilsen TVC
					
		
	 
                            
Annonceindlæg fra Conscia 
 
 
	
		
		
			Hvad er indholdet af ActiveCell når du kalder funktionen og hvad skulle resultatet være?
		
		
	 
	
		
								
				 
				tvc 
				Seniormester  
			 
					
				03. maj 2009 - 18:33  
				#2 
						
		 
		
			ActiveCell kan eksempelvis indeholde en enkelt henvisning til en celle: =H11 Denne funktion vil jeg gerne have sat ind i afrundfunktionen: =AFRUND(H11;-3) Men når jeg kører min macro giver den: =AFRUND('H11';-3)
		
		
	 
	
		
		
			Det ser ud som om det er pga måden du refererer til cellen; du skal bruge R1C1-notation. Der er lidt spildkode i mit eksempel, da jeg lige skulle teste, men den virker tilsyneladende. Sub Makro1() Dim Indhold As String Dim tmpFormula As String Dim R As Range Indhold = Mid(ActiveCell.Formula, 2, 99) Set R = Range(Indhold) 'Debug.Print R.Address Indhold = R.Address(False, False, xlR1C1) tmpFormula = "=ROUND(" & Indhold & ",-3)"     ActiveCell.FormulaR1C1 = tmpFormula     End Sub
		
		
	 
	
		
								
				 
				tvc 
				Seniormester  
			 
					
				03. maj 2009 - 20:31  
				#4 
						
		 
		
			Der er noget der ikke helt virker, for funktionen refererer nu kun til J21 og ikke den aktive celle?
		
		
	 
	
		
								
				 
				tvc 
				Seniormester  
			 
					
				03. maj 2009 - 20:33  
				#5 
						
		 
		
			Det næste problem er så også, at den kun virker på en Range og ikke på eksempelvis en =sum(a1:b1)
		
		
	 
	
	
	
		
		
			Sub Makro1() Dim Indhold As String Indhold = Strings.Mid(ActiveCell.Formula, 2, 99) ActiveCell.Formula = "=ROUND(" + Indhold + ",-3)"      End Sub
		
		
	 
	
	
		
								
				 
				tvc 
				Seniormester  
			 
					
				24. august 2009 - 12:33  
				#8 
						
		 
		
			Hej Excelent Beklager det sene svar - Det virker så tak for hjælpen. TVC
		
		
	 
	
		
	
		
		
		
			
			Excel kurser for alle niveauer og behov – find det kursus, der passer til dig