Hallo
Ich habe folgendes Problem oder folgendes festgestellt:
In einem Bericht habe habe auf der Detailebene ein Memofeld eingefügt. Das Feld hat die Eigenschaft vergrössern und verkleiner. Der Detailbereich hat diese Eigenschaft auch, sowie automatische Höhe Ja. Ist das Feld auf einem Datensatz leer wird im Bericht trotzdem eine leere Linie angezeigt. Bei den Text und Zahlenfelder ist dies nicht so?
Ist dies so, oder wie kann ich dieses Problem umgehen?
Gruss Daniel
Hallo,
wenn es sich bei "eine leere Linie " um den Rest des Textfeldrahmens handelt, dann stell diesen auf transparent ein...
Hallo Daniel,
und hier eine zweite Methode.
Im Anhang habe ich extra den Rahmen auf "Durchgezogen" gestellt, um den Effekt sichtbar zu machen.
Es wird die Eigenschaft sichtbar/unsichtbar ausgenutzt, die im Ereignis "Beim Formatieren" eingestellt wird in Anhängigkeit vom Inhalt des Memo-Feldes.
Harald
[Anhang gelöscht durch Administrator]
Hallo
Es ist nicht eine Linie sichtbar, doch es gibt einen Leerraum zwischen den Felder oberhalb des Memo-Feldes und den Feldern die unterhalb des Memofeldes auf dem Bericht sind. Die Höhe des Leerraumes ist exakt die Schrifthöhe des Memofelds.
Gruss Daniel
Hallo,
hast Du denn auch die Höhe des Textfeldes, das den Memotext anzeigen soll, im Form-Entwurf auf annähernd 0 (0,001) gesetzt?
Hallo
Nein das Feld hatte eine normale Höhe. Ich habe diese auf 0.002cm reduziert. Das funktioniert. Nun ist ein weiteres Problem dazugekommen.
Ich habe zwei Memo-Felder hintereinander. Das erste ist ein Positionstext Allgemein der für alle Berichte eines Auftrages gilt (Offert, Auftrasbestätigung, Lieferschein, Rechnung) Der zweite Positionstext ist spezifisch jeweils für ein Dokument z.B nur für die Rechnung.
Ich habe die beiden Felder auf 0.002cm reduziert und aneinandergeschoben. Wenn nun der obere Text nur eine Zeile hat, werden die die beiden Texte übereinandergeschrieben, hat der erste Text 2 Zeilen funktioniert es und der zweite Text wird nach dem ersten Text geschrieben.
Gruss Daniel
HAllo,
"aneinandergeschoben"
vermeide das.... Lass einen geringen Abstand dazwischen.
Hallo
Ich hatte schon einen kleinen Abstand zwischen den zwei Feldern gelassen, der grösser war als die Feldhöhe des ersten Feldes 0.005cm. Nun funktioniert es. Ich musste den Abstand auf 0.03cm erhöhen.
Mein Bericht ist relativ komplex und das ganze ausprobieren, suchen und änderen hat mich viel Zeit und Nerven gekostet. Aber es hat mir auch gezeigt, was ich bei zukünftigen Berichten beachten muss.
Danke
Gruss Daniel
Hallo
Im Zusammenhang mit meinem Bericht habe ich nun noch eine andere Frage:
Ich habe verschiedene Felder, die ich mit einer Funktion abfühle. Kann ich über diese Funktion mitgeben, dass das Feld augrund eines bestimment Wertes fett wird?
Hier ist eine Funktion:
Private Function BetragExklMWStAuftrTotal() As Variant
'Anzeige Betrag exkl MWSt oder Auftrags-Total
Dim varBetragExklMWStAuftrTotal
If Me.auftrK_Rab <> 0 Then
varBetragExklMWStAuftrTotal = Me.txtAuftr_PosTotal + RabattAuftr
Else
varBetragExklMWStAuftrTotal = Me.txtAuftr_PosTotal + Me.txtAuftr_PosTotal * Me.mwst_Satz / 100
End If
BetragExklMWStAuftrTotal = varBetragExklMWStAuftrTotal
End Function
Wenn die Funktion das Auftrags-Total anzeigt, soll das Feld fett angezeigt werden , sonst nicht.
Gruss Daniel
Hallo,
die Bedingung <<Wenn die Funktion das Auftrags-Total anzeigt>> ist falsch gestellt.. Die Funktion liefert immer einen Wert (nach ihrem Aufruf), eben den, den sie berechnet. Somit kann man die Frage nicht beantworten.
Wenn Du ein Feld in Abhängigkeit vom berechneten Wert, bzw. vom akt. durchlaufenden Algorithmus einstellen willst, so kannst Du das ja gleich in den If-Zweigen erledigen:
.
.
.
If Me.auftrK_Rab <> 0 Then
varBetragExklMWStAuftrTotal = Me.txtAuftr_PosTotal + RabattAuftr
Me!Textfeld.FontWeight= 400 'alternativ: Me!Textfeld.FontBold =False
Else
varBetragExklMWStAuftrTotal = Me.txtAuftr_PosTotal + Me.txtAuftr_PosTotal * Me.mwst_Satz / 100
Me!Texfteld.FontWeight= 700 'alternativ: Me!Textfeld.FontBold =True
End If
.
.
Was meinst Du mit "abgefühlt"?